Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Side by Side Diff: chrome/browser/resources/settings/settings_main/settings_main.js

Issue 2739323005: MD Settings: Allow search within settings to track multiple requests separately. (Closed)
Patch Set: Address comments. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @typedef {{about: boolean, settings: boolean}} 6 * @typedef {{about: boolean, settings: boolean}}
7 */ 7 */
8 var MainPageVisibility; 8 var MainPageVisibility;
9 9
10 /** 10 /**
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 */ 247 */
248 searchContents: function(query) { 248 searchContents: function(query) {
249 // Trigger rendering of the basic and advanced pages and search once ready. 249 // Trigger rendering of the basic and advanced pages and search once ready.
250 this.inSearchMode_ = true; 250 this.inSearchMode_ = true;
251 this.toolbarSpinnerActive = true; 251 this.toolbarSpinnerActive = true;
252 252
253 return new Promise(function(resolve, reject) { 253 return new Promise(function(resolve, reject) {
254 setTimeout(function() { 254 setTimeout(function() {
255 var whenSearchDone = 255 var whenSearchDone =
256 assert(this.getPage_(settings.Route.BASIC)).searchContents(query); 256 assert(this.getPage_(settings.Route.BASIC)).searchContents(query);
257 whenSearchDone.then(function(request) { 257 whenSearchDone.then(function(result) {
258 resolve(); 258 resolve();
259 if (!request.finished) { 259 if (result.canceled) {
260 // Nothing to do here. A previous search request was canceled 260 // Nothing to do here. A previous search request was canceled
261 // because a new search request was issued before the first one 261 // because a new search request was issued with a different query
262 // completed. 262 // before the previous completed.
263 return; 263 return;
264 } 264 }
265 265
266 this.toolbarSpinnerActive = false; 266 this.toolbarSpinnerActive = false;
267 this.inSearchMode_ = !request.isSame(''); 267 this.inSearchMode_ = !result.wasClearSearch;
268 this.showNoResultsFound_ = 268 this.showNoResultsFound_ =
269 this.inSearchMode_ && !request.didFindMatches(); 269 this.inSearchMode_ && result.didFindMatches;
270 }.bind(this)); 270 }.bind(this));
271 }.bind(this), 0); 271 }.bind(this), 0);
272 }.bind(this)); 272 }.bind(this));
273 }, 273 },
274 }); 274 });
OLDNEW
« no previous file with comments | « chrome/browser/resources/settings/search_settings.js ('k') | chrome/test/data/webui/settings/basic_page_browsertest.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698