diff --git a/app/assets/javascripts/discourse/controllers/composer.js.es6 b/app/assets/javascripts/discourse/controllers/composer.js.es6 index 7a97eda7a..2159633fc 100644 --- a/app/assets/javascripts/discourse/controllers/composer.js.es6 +++ b/app/assets/javascripts/discourse/controllers/composer.js.es6 @@ -83,6 +83,13 @@ export default DiscourseController.extend({ }, hitEsc() { + + const messages = this.get('controllers.composer-messages.model'); + if (messages.length) { + messages.popObject(); + return; + } + if (this.get('model.viewOpen')) { this.shrink(); } diff --git a/app/assets/javascripts/discourse/views/composer-messages.js.es6 b/app/assets/javascripts/discourse/views/composer-messages.js.es6 index beac06757..39f911ec7 100644 --- a/app/assets/javascripts/discourse/views/composer-messages.js.es6 +++ b/app/assets/javascripts/discourse/views/composer-messages.js.es6 @@ -1,11 +1,3 @@ -/** - Renders a popup messages on the composer - - @class ComposerMessagesView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ export default Ember.CollectionView.extend({ classNameBindings: [':composer-popup-container', 'hidden'], content: Em.computed.alias('controller.content'), @@ -16,19 +8,18 @@ export default Ember.CollectionView.extend({ classNames: ['composer-popup', 'hidden'], templateName: Em.computed.alias('content.templateName'), - init: function() { + _setup: function() { this._super(); this.set('context', this.get('content')); if (this.get('content.extraClass')) { this.get('classNames').pushObject(this.get('content.extraClass')); } - }, + }.on('init'), - didInsertElement: function() { + _initCss: function() { var composerHeight = $('#reply-control').height() || 0; this.$().css('bottom', composerHeight + "px").show(); - } + }.on('didInsertElement') }) }); -