diff --git a/lib/ace/editor.js b/lib/ace/editor.js index f2b9744c..7183eb9e 100644 --- a/lib/ace/editor.js +++ b/lib/ace/editor.js @@ -2553,7 +2553,9 @@ var Editor = function(renderer, session) { rect = self.renderer.container.getBoundingClientRect(); }); var onAfterRender = this.renderer.on("afterRender", function() { - if (shouldScroll && rect && self.isFocused()) { + if (shouldScroll && rect && (self.isFocused() + || self.searchBox && self.searchBox.isFocused()) + ) { var renderer = self.renderer; var pos = renderer.$cursorLayer.$pixelPos; var config = renderer.layerConfig; diff --git a/lib/ace/ext/searchbox.js b/lib/ace/ext/searchbox.js index 0369f2d0..b316aa75 100644 --- a/lib/ace/ext/searchbox.js +++ b/lib/ace/ext/searchbox.js @@ -281,6 +281,10 @@ var SearchBox = function(editor, range, showReplaceForm) { this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb); }; + this.isFocused = function() { + var el = document.activeElement; + return el == this.searchInput || el == this.replaceInput; + } }).call(SearchBox.prototype); exports.SearchBox = SearchBox;