diff --git a/CHANGELOG.md b/CHANGELOG.md index 771558248..c1444f8f4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +* Fix open keyboard bug under iOS after closing selection (#1127) + + *@zeitiger* + * Fix highlighting more than one character (#1099, #1098) *@skimi* diff --git a/src/selectize.js b/src/selectize.js index a7d52f5a5..ad2d318da 100644 --- a/src/selectize.js +++ b/src/selectize.js @@ -1741,6 +1741,7 @@ $.extend(Selectize.prototype, { if (self.settings.mode === 'single' && self.items.length) { self.hideInput(); + self.$control_input.blur(); // close keyboard on iOS } self.isOpen = false; diff --git a/test/interaction.js b/test/interaction.js index 37b446a3a..16ab9b271 100644 --- a/test/interaction.js +++ b/test/interaction.js @@ -29,17 +29,34 @@ it('should close dropdown after selection made if closeAfterSelect: true', function(done) { var test = setup_test('', {closeAfterSelect: true}); - click(test.selectize.$control, function() { - click($('[data-value=a]', test.selectize.$dropdown_content), function() { - expect(test.selectize.isOpen).to.be.equal(false); - expect(test.selectize.isFocused).to.be.equal(true); - done(); - }); + click(test.selectize.$control, function() { + click($('[data-value=a]', test.selectize.$dropdown_content), function() { + expect(test.selectize.isOpen).to.be.equal(false); + expect(test.selectize.isFocused).to.be.equal(true); + done(); }); + }); + }); + + it('should close and blur dropdown after selection made if closeAfterSelect: true and in single mode' , function(done) { + var test = setup_test('', {closeAfterSelect: true}); + + click(test.selectize.$control, function() { + expect(test.selectize.isOpen).to.be.equal(true); + expect(test.selectize.isFocused).to.be.equal(true); + click($('[data-value=a]', test.selectize.$dropdown_content), function() { + expect(test.selectize.isOpen).to.be.equal(false); + expect(test.selectize.isFocused).to.be.equal(false); + done(); + }); + }); }); describe('clicking control', function() {