| Index: chrome/browser/resources/settings/search_settings.js
|
| diff --git a/chrome/browser/resources/settings/search_settings.js b/chrome/browser/resources/settings/search_settings.js
|
| index f001427a140d760bf52ada4df340c8a092609fb8..3d2093e15b498bb269487cbb3a5b62067b27422d 100644
|
| --- a/chrome/browser/resources/settings/search_settings.js
|
| +++ b/chrome/browser/resources/settings/search_settings.js
|
| @@ -100,7 +100,7 @@ cr.define('settings', function() {
|
| * ensures that <settings-section> instances become visible if any matches
|
| * occurred under their subtree.
|
| *
|
| - * @param {!SearchRequest} request
|
| + * @param {!settings.SearchRequest} request
|
| * @param {!Node} root The root of the sub-tree to be searched
|
| * @private
|
| */
|
| @@ -167,11 +167,11 @@ cr.define('settings', function() {
|
| /**
|
| * @constructor
|
| *
|
| - * @param {!SearchRequest} request
|
| + * @param {!settings.SearchRequest} request
|
| * @param {!Node} node
|
| */
|
| function Task(request, node) {
|
| - /** @protected {!SearchRequest} */
|
| + /** @protected {!settings.SearchRequest} */
|
| this.request = request;
|
|
|
| /** @protected {!Node} */
|
| @@ -193,7 +193,7 @@ cr.define('settings', function() {
|
| * @constructor
|
| * @extends {Task}
|
| *
|
| - * @param {!SearchRequest} request
|
| + * @param {!settings.SearchRequest} request
|
| * @param {!Node} node
|
| */
|
| function RenderTask(request, node) {
|
| @@ -227,7 +227,7 @@ cr.define('settings', function() {
|
| * @constructor
|
| * @extends {Task}
|
| *
|
| - * @param {!SearchRequest} request
|
| + * @param {!settings.SearchRequest} request
|
| * @param {!Node} node
|
| */
|
| function SearchAndHighlightTask(request, node) {
|
| @@ -247,7 +247,7 @@ cr.define('settings', function() {
|
| * @constructor
|
| * @extends {Task}
|
| *
|
| - * @param {!SearchRequest} request
|
| + * @param {!settings.SearchRequest} request
|
| * @param {!Node} page
|
| */
|
| function TopLevelSearchTask(request, page) {
|
| @@ -454,11 +454,25 @@ cr.define('settings', function() {
|
| },
|
| };
|
|
|
| + /** @interface */
|
| + var SearchManager = function() {};
|
| +
|
| + SearchManager.prototype = {
|
| + /**
|
| + * @param {string} text The text to search for.
|
| + * @param {!Node} page
|
| + * @return {!Promise<!settings.SearchRequest>} A signal indicating that
|
| + * searching finished.
|
| + */
|
| + search: function(text, page) {}
|
| + };
|
| +
|
| /**
|
| * @constructor
|
| + * @implements {SearchManager}
|
| */
|
| - var SearchManager = function() {
|
| - /** @private {?SearchRequest} */
|
| + var SearchManagerImpl = function() {
|
| + /** @private {?settings.SearchRequest} */
|
| this.activeRequest_ = null;
|
|
|
| /** @private {!TaskQueue} */
|
| @@ -469,15 +483,10 @@ cr.define('settings', function() {
|
| this.activeRequest_ = null;
|
| }.bind(this));
|
| };
|
| - cr.addSingletonGetter(SearchManager);
|
| + cr.addSingletonGetter(SearchManagerImpl);
|
|
|
| - SearchManager.prototype = {
|
| - /**
|
| - * @param {string} text The text to search for.
|
| - * @param {!Node} page
|
| - * @return {!Promise<!SearchRequest>} A signal indicating that searching
|
| - * finished.
|
| - */
|
| + SearchManagerImpl.prototype = {
|
| + /** @override */
|
| search: function(text, page) {
|
| // Creating a new request only if the |text| changed.
|
| if (!this.activeRequest_ || !this.activeRequest_.isSame(text)) {
|
| @@ -499,10 +508,20 @@ cr.define('settings', function() {
|
|
|
| /** @return {!SearchManager} */
|
| function getSearchManager() {
|
| - return SearchManager.getInstance();
|
| + return SearchManagerImpl.getInstance();
|
| + }
|
| +
|
| + /**
|
| + * Sets the SearchManager singleton instance, useful for testing.
|
| + * @param {!SearchManager} searchManager
|
| + */
|
| + function setSearchManagerForTesting(searchManager) {
|
| + SearchManagerImpl.instance_ = searchManager;
|
| }
|
|
|
| return {
|
| getSearchManager: getSearchManager,
|
| + setSearchManagerForTesting: setSearchManagerForTesting,
|
| + SearchRequest: SearchRequest,
|
| };
|
| });
|
|
|