diff --git a/src/c3nav/editor/models/changeset.py b/src/c3nav/editor/models/changeset.py
index 6d21a6d5..bb1cf0a7 100644
--- a/src/c3nav/editor/models/changeset.py
+++ b/src/c3nav/editor/models/changeset.py
@@ -292,7 +292,7 @@ class ChangeSet(models.Model):
return self.can_edit(request) and self.state == 'unproposed'
def can_propose(self, request):
- return self.can_edit(request) and not self.proposed
+ return self.can_edit(request) and not self.proposed and self.changed_objects_count
def can_unpropose(self, request):
return self.author_id == request.user.pk and self.state in ('proposed', 'reproposed')
diff --git a/src/c3nav/editor/templates/editor/changeset.html b/src/c3nav/editor/templates/editor/changeset.html
index ef5eac46..dc33934c 100644
--- a/src/c3nav/editor/templates/editor/changeset.html
+++ b/src/c3nav/editor/templates/editor/changeset.html
@@ -134,7 +134,7 @@
{% if can_edit %}
{% trans 'Edit' %}
{% endif %}
- {% if can_edit and not changeset.proposed %}
+ {% if can_propose %}
{% endif %}
{% if can_start_review %}
diff --git a/src/c3nav/editor/views/changes.py b/src/c3nav/editor/views/changes.py
index 1cdd97ba..f8ce2b91 100644
--- a/src/c3nav/editor/views/changes.py
+++ b/src/c3nav/editor/views/changes.py
@@ -318,6 +318,7 @@ def changeset_detail(request, pk):
'changeset': changeset,
'can_edit': can_edit,
'can_delete': can_delete,
+ 'can_propose': changeset.can_propose(request),
'can_unpropose': changeset.can_unpropose(request),
'can_start_review': changeset.can_start_review(request),
'can_end_review': changeset.can_end_review(request),