| Index: Source/devtools/front_end/sources/AdvancedSearchView.js
|
| diff --git a/Source/devtools/front_end/sources/AdvancedSearchView.js b/Source/devtools/front_end/sources/AdvancedSearchView.js
|
| index 2fc1b0e0ca5da730e890299932936176fe9a0312..362b9b78e047d09669a6812d2cb246406b78e3f4 100644
|
| --- a/Source/devtools/front_end/sources/AdvancedSearchView.js
|
| +++ b/Source/devtools/front_end/sources/AdvancedSearchView.js
|
| @@ -414,3 +414,60 @@ WebInspector.SearchScope.prototype = {
|
| */
|
| createSearchResultsPane: function(searchConfig) { }
|
| }
|
| +
|
| +
|
| +/**
|
| + * @constructor
|
| + * @implements {WebInspector.Revealer}
|
| + */
|
| +WebInspector.AdvancedSearchView.SearchResultsRevealer = function()
|
| +{
|
| +}
|
| +
|
| +WebInspector.AdvancedSearchView.SearchResultsRevealer.prototype = {
|
| + /**
|
| + * @override
|
| + * @param {!Object} results
|
| + * @return {!Promise}
|
| + */
|
| + reveal: function(results)
|
| + {
|
| + if (!(results instanceof WebInspector.SearchResultsCollection))
|
| + return Promise.reject(new Error("Internal error: not a search results collection"));
|
| +
|
| + //TODO: Stop accessing private members
|
| + var searchResultsPanel = WebInspector.AdvancedSearchView._instance;
|
| + if (!searchResultsPanel) {
|
| + searchResultsPanel = new WebInspector.AdvancedSearchView();
|
| + }
|
| +
|
| + searchResultsPanel._nothingFound();
|
| + searchResultsPanel._searchConfig = new WebInspector.SearchConfig(results.highlightText(), true, false); //TODO: HACK - really should be able to highlight arbitrary spans
|
| + searchResultsPanel._searchResultsPane = searchResultsPanel._searchScope.createSearchResultsPane(searchResultsPanel._searchConfig);
|
| + searchResultsPanel._resetResults();
|
| + searchResultsPanel._searchResultsElement.appendChild(searchResultsPanel._searchResultsPane.element);
|
| +
|
| +
|
| + WebInspector.inspectorView.setCurrentPanel(WebInspector.SourcesPanel.instance());
|
| + WebInspector.inspectorView.showViewInDrawer("sources.search");
|
| +
|
| + results.results().map(function(sourceResult) { //map to file search result
|
| + var code = WebInspector.networkMapping.uiSourceCodeForURLForAnyTarget(sourceResult.source) || WebInspector.workspace.uiSourceCodeForFilePath(sourceResult.source);
|
| + if (!code) {
|
| + return;
|
| + }
|
| + return new WebInspector.FileBasedSearchResult(
|
| + code,
|
| + sourceResult.map(function(item){
|
| + return new WebInspector.ContentProvider.SearchMatch(item.line(), item.lineContent());
|
| + })
|
| + );
|
| + }).forEach(function(searchResult) {
|
| + if (!searchResult) return;
|
| + searchResultsPanel._addSearchResult(searchResult);
|
| + searchResultsPanel._searchResultsPane.addSearchResult(searchResult);
|
| + });
|
| +
|
| + return Promise.resolve();
|
| + }
|
| +}
|
|
|