diff --git a/app/assets/javascripts/discourse/components/pagedown-editor.js.es6 b/app/assets/javascripts/discourse/components/pagedown-editor.js.es6 index 83baf1be41..6f04e77152 100644 --- a/app/assets/javascripts/discourse/components/pagedown-editor.js.es6 +++ b/app/assets/javascripts/discourse/components/pagedown-editor.js.es6 @@ -1,21 +1,23 @@ +import { observes, on } from 'ember-addons/ember-computed-decorators'; import loadScript from 'discourse/lib/load-script'; export default Ember.Component.extend({ classNameBindings: [':pagedown-editor'], - _initializeWmd: function() { - const self = this; - loadScript('defer/html-sanitizer-bundle').then(function() { - self.$('.wmd-input').data('init', true); - self._editor = Discourse.Markdown.createEditor({ containerElement: self.element }); - self._editor.run(); - Ember.run.scheduleOnce('afterRender', self, self._refreshPreview); + @on("didInsertElement") + _initializeWmd() { + loadScript('defer/html-sanitizer-bundle').then(() => { + this.$('.wmd-input').data('init', true); + this._editor = Discourse.Markdown.createEditor({ containerElement: this.element }); + this._editor.run(); + Ember.run.scheduleOnce('afterRender', this, this._refreshPreview); }); - }.on('didInsertElement'), + }, - observeValue: function() { + @observes("value") + observeValue() { Ember.run.scheduleOnce('afterRender', this, this._refreshPreview); - }.observes('value'), + }, _refreshPreview() { this._editor.refreshPreview(); diff --git a/app/assets/javascripts/discourse/lib/Markdown.Editor.js b/app/assets/javascripts/discourse/lib/Markdown.Editor.js index 13ca4b52a4..2dd0acaef3 100644 --- a/app/assets/javascripts/discourse/lib/Markdown.Editor.js +++ b/app/assets/javascripts/discourse/lib/Markdown.Editor.js @@ -306,7 +306,8 @@ // end of Chunks function firstByClass(doc, containerElement, className) { - var elements = doc.getElementsByClassName(className); + var container = containerElement || doc; + var elements = container.getElementsByClassName(className); if (elements && elements.length) { return elements[0]; } diff --git a/app/assets/javascripts/discourse/templates/components/pagedown-editor.hbs b/app/assets/javascripts/discourse/templates/components/pagedown-editor.hbs index b12fad0228..52e92ae1fe 100644 --- a/app/assets/javascripts/discourse/templates/components/pagedown-editor.hbs +++ b/app/assets/javascripts/discourse/templates/components/pagedown-editor.hbs @@ -1,4 +1,3 @@
{{textarea value=value class="wmd-input"}} -