loleaflet/src/control/Search.js | 27 ++++++--------------------- loleaflet/src/layer/tile/TileLayer.js | 14 +++++--------- 2 files changed, 11 insertions(+), 30 deletions(-)
New commits: commit 1a7fead463f742cb6bc072e2836f30c155f36e60 Author: Marco Cecchetti <marco.cecche...@collabora.com> Date: Thu Jan 21 10:54:24 2016 +0100 text doc - search - normal search does not discard highlighting Improved search behavior for text documents:now when a normal search is performed with the same search string utilized by a previous searchAll action, search results highlighting is not removed. diff --git a/loleaflet/src/control/Search.js b/loleaflet/src/control/Search.js index 136f97b..5528a08 100644 --- a/loleaflet/src/control/Search.js +++ b/loleaflet/src/control/Search.js @@ -6,27 +6,9 @@ L.Map.include({ if (all === undefined) { all = 0; } - - // check if there is a cached searchAll result for this phrase - // if there is update index for next/prev iteration - if (this._docLayer._searchResults && text === this._docLayer._searchTerm) { - if (backward) { - if (this._docLayer._searchIndex > 0) { - this._docLayer._searchIndex--; - } - else { - this._docLayer._searchIndex = this._docLayer._searchResults.length - 1; - } - } else { - if (this._docLayer._searchIndex < this._docLayer._searchResults.length - 1) { - this._docLayer._searchIndex++; - } - else { - this._docLayer._searchIndex = 0; - } - } - this.setPart(this._docLayer._searchResults[this._docLayer._searchIndex].part); - return; + if (this._docLayer._searchResults && text !== this._docLayer._searchTerm) + { + this._docLayer._clearSearchResults(); } var searchCmd = { @@ -61,6 +43,9 @@ L.Map.include({ }, searchAll: function (text, backward) { + if (this._docLayer._searchResults && text === this._docLayer._searchTerm) { + return; + } this.search(text, backward, 1); }, diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index dcef8c7..bae33d6 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -482,7 +482,6 @@ L.TileLayer = L.GridLayer.extend({ }, _onSearchResultSelection: function (textMsg) { - this._clearSearchResults(); textMsg = textMsg.substring(23); var obj = JSON.parse(textMsg); var originalPhrase = obj.searchString; @@ -497,22 +496,19 @@ L.TileLayer = L.GridLayer.extend({ } // do not cache search results if there is only one result. // this way regular searches works fine - if (this._docType === 'presentation' && count > 1) + if (count > 1) { - this._map._socket.sendMessage('resetselection'); + this._clearSearchResults(); this._searchResults = results; - this._searchTerm = originalPhrase; - this._searchIndex = 0; - this._map.setPart(results[0].part); // go to first result. } + this._searchTerm = originalPhrase; this._map.fire('search', {originalPhrase: originalPhrase, count: count, results: results}); }, _clearSearchResults: function() { this._searchResults = null; this._searchTerm = null; - this._searchIndex = null; this._searchResultsLayer.clearLayers(); }, @@ -521,12 +517,12 @@ L.TileLayer = L.GridLayer.extend({ return; } this._searchResultsLayer.clearLayers(); - for (var k=0; k < this._searchResults.length; k++) + for (var k = 0; k < this._searchResults.length; k++) { var result = this._searchResults[k]; if (result.part === this._selectedPart) { - var _fillColor = (k === this._searchIndex) ? '#43ACE8' : '#CCCCCC'; + var _fillColor = '#CCCCCC'; var strTwips = result.twipsRectangles.match(/\d+/g); var rectangles = []; for (var i = 0; i < strTwips.length; i += 4) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits