diff --git a/ghost/admin/app/components/gh-search-input.js b/ghost/admin/app/components/gh-search-input.js index 48908f070e..052c77590a 100644 --- a/ghost/admin/app/components/gh-search-input.js +++ b/ghost/admin/app/components/gh-search-input.js @@ -124,23 +124,6 @@ export default Ember.Component.extend({ onBlur: function () { this._resetKeymasterScope(); - }, - - // hacky method of disabling the dropdown until a user has typed something - // TODO: move into a selectize plugin - onInit: function () { - var selectize = this.get('_selectize'); - selectize.on('dropdown_open', function () { - if (Ember.isBlank(selectize.$control_input.val())) { - selectize.close(); - } - }); - }, - - onUpdateFilter: function (filter) { - if (Ember.isBlank(filter)) { - this.get('_selectize').close(); - } } } diff --git a/ghost/admin/app/components/gh-selectize.js b/ghost/admin/app/components/gh-selectize.js index b540cd7971..f5d3320185 100644 --- a/ghost/admin/app/components/gh-selectize.js +++ b/ghost/admin/app/components/gh-selectize.js @@ -3,6 +3,26 @@ import EmberSelectizeComponent from 'ember-cli-selectize/components/ember-select export default EmberSelectizeComponent.extend({ + _dontOpenWhenBlank: Ember.on('didInsertElement', function () { + var openOnFocus = this.get('openOnFocus'); + + if (!openOnFocus) { + Ember.run.next(this, function () { + var selectize = this._selectize; + selectize.on('dropdown_open', function () { + if (Ember.isBlank(selectize.$control_input.val())) { + selectize.close(); + } + }); + selectize.on('type', function (filter) { + if (Ember.isBlank(filter)) { + selectize.close(); + } + }); + }); + } + }), + /** * Event callback that is triggered when user creates a tag * - modified to pass the caret position to the action diff --git a/ghost/admin/app/templates/components/gh-search-input.hbs b/ghost/admin/app/templates/components/gh-search-input.hbs index 8724f901a6..6f188c1404 100644 --- a/ghost/admin/app/templates/components/gh-search-input.hbs +++ b/ghost/admin/app/templates/components/gh-search-input.hbs @@ -8,9 +8,7 @@ optionGroupPath="content.category" openOnFocus=false maxItems="1" - on-init="onInit" on-focus="onFocus" on-blur="onBlur" - select-item="openSelected" - update-filter="onUpdateFilter"}} + select-item="openSelected"}} diff --git a/ghost/admin/app/templates/post-settings-menu.hbs b/ghost/admin/app/templates/post-settings-menu.hbs index 2c9f92c06b..33e3c26d77 100644 --- a/ghost/admin/app/templates/post-settings-menu.hbs +++ b/ghost/admin/app/templates/post-settings-menu.hbs @@ -42,6 +42,7 @@ content=availableTags optionValuePath="content.uuid" optionLabelPath="content.name" + openOnFocus=false create-item="addTag" remove-item="removeTag"}}