diff --git a/app/assets/javascripts/discourse/controllers/composer.js.es6 b/app/assets/javascripts/discourse/controllers/composer.js.es6 index cf839d8e8ac..ad34970e5bc 100644 --- a/app/assets/javascripts/discourse/controllers/composer.js.es6 +++ b/app/assets/javascripts/discourse/controllers/composer.js.es6 @@ -187,8 +187,15 @@ export default Controller.extend({ ); }, - disableCategoryChooser: Ember.computed.not("model.topic.details.can_edit"), - disableTagsChooser: Ember.computed.not("model.topic.canEditTags"), + @computed("model.editingPost", "model.topic.details.can_edit") + disableCategoryChooser(editingPost, canEditTopic) { + return editingPost && !canEditTopic; + }, + + @computed("model.editingPost", "model.topic.canEditTags") + disableTagsChooser(editingPost, canEditTags) { + return editingPost && !canEditTags; + }, isStaffUser: Ember.computed.reads("currentUser.staff"), diff --git a/app/assets/javascripts/discourse/models/composer.js.es6 b/app/assets/javascripts/discourse/models/composer.js.es6 index 34b44985df0..686d98c5fbf 100644 --- a/app/assets/javascripts/discourse/models/composer.js.es6 +++ b/app/assets/javascripts/discourse/models/composer.js.es6 @@ -141,7 +141,11 @@ const Composer = RestModel.extend({ creatingPrivateMessage: Ember.computed.equal("action", PRIVATE_MESSAGE), notCreatingPrivateMessage: Ember.computed.not("creatingPrivateMessage"), notPrivateMessage: Ember.computed.not("privateMessage"), - disableTitleInput: Ember.computed.not("topic.details.can_edit"), + + @computed("editingPost", "topic.details.can_edit") + disableTitleInput(editingPost, canEditTopic) { + return editingPost && !canEditTopic; + }, @computed("privateMessage", "archetype.hasOptions") showCategoryChooser(isPrivateMessage, hasOptions) {