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

Side by Side Diff: chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc

Issue 2478573004: Convert GURL::{host,path} to GURL::{host_piece,path_piece} for ==. (Closed)
Patch Set: rebase to #431874 Created 4 years, 1 month 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h" 5 #include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <vector> 9 #include <vector>
10 10
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 #endif // !defined(OS_ANDROID) 272 #endif // !defined(OS_ANDROID)
273 273
274 #if defined(OS_WIN) 274 #if defined(OS_WIN)
275 template <> 275 template <>
276 WebUIController* NewWebUI<WelcomeWin10UI>(WebUI* web_ui, const GURL& url) { 276 WebUIController* NewWebUI<WelcomeWin10UI>(WebUI* web_ui, const GURL& url) {
277 return new WelcomeWin10UI(web_ui, url); 277 return new WelcomeWin10UI(web_ui, url);
278 } 278 }
279 #endif // defined(OS_WIN) 279 #endif // defined(OS_WIN)
280 280
281 bool IsAboutUI(const GURL& url) { 281 bool IsAboutUI(const GURL& url) {
282 return (url.host() == chrome::kChromeUIChromeURLsHost || 282 return (url.host_piece() == chrome::kChromeUIChromeURLsHost ||
283 url.host() == chrome::kChromeUICreditsHost || 283 url.host_piece() == chrome::kChromeUICreditsHost ||
284 url.host() == chrome::kChromeUIDNSHost 284 url.host_piece() == chrome::kChromeUIDNSHost
285 #if !defined(OS_ANDROID) 285 #if !defined(OS_ANDROID)
286 || url.host() == chrome::kChromeUITermsHost 286 || url.host_piece() == chrome::kChromeUITermsHost
287 #endif 287 #endif
288 #if defined(OS_LINUX) || defined(OS_OPENBSD) 288 #if defined(OS_LINUX) || defined(OS_OPENBSD)
289 || url.host() == chrome::kChromeUILinuxProxyConfigHost || 289 || url.host_piece() == chrome::kChromeUILinuxProxyConfigHost ||
290 url.host() == chrome::kChromeUISandboxHost 290 url.host_piece() == chrome::kChromeUISandboxHost
291 #endif 291 #endif
292 #if defined(OS_CHROMEOS) 292 #if defined(OS_CHROMEOS)
293 || url.host() == chrome::kChromeUIOSCreditsHost 293 || url.host_piece() == chrome::kChromeUIOSCreditsHost
294 #endif 294 #endif
295 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) 295 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX)
296 || url.host() == chrome::kChromeUIDiscardsHost 296 || url.host_piece() == chrome::kChromeUIDiscardsHost
297 #endif 297 #endif
298 ); // NOLINT 298 ); // NOLINT
299 } 299 }
300 300
301 // Returns a function that can be used to create the right type of WebUI for a 301 // Returns a function that can be used to create the right type of WebUI for a
302 // tab, based on its URL. Returns NULL if the URL doesn't have WebUI associated 302 // tab, based on its URL. Returns NULL if the URL doesn't have WebUI associated
303 // with it. 303 // with it.
304 WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, 304 WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
305 Profile* profile, 305 Profile* profile,
306 const GURL& url) { 306 const GURL& url) {
307 // This will get called a lot to check all URLs, so do a quick check of other 307 // This will get called a lot to check all URLs, so do a quick check of other
308 // schemes to filter out most URLs. 308 // schemes to filter out most URLs.
309 if (!url.SchemeIs(content::kChromeDevToolsScheme) && 309 if (!url.SchemeIs(content::kChromeDevToolsScheme) &&
310 !url.SchemeIs(content::kChromeUIScheme)) { 310 !url.SchemeIs(content::kChromeUIScheme)) {
311 return NULL; 311 return NULL;
312 } 312 }
313 313
314 /**************************************************************************** 314 /****************************************************************************
315 * Please keep this in alphabetical order. If #ifs or special logics are 315 * Please keep this in alphabetical order. If #ifs or special logics are
316 * required, add it below in the appropriate section. 316 * required, add it below in the appropriate section.
317 ***************************************************************************/ 317 ***************************************************************************/
318 // We must compare hosts only since some of the Web UIs append extra stuff 318 // We must compare hosts only since some of the Web UIs append extra stuff
319 // after the host name. 319 // after the host name.
320 // All platform builds of Chrome will need to have a cloud printing 320 // All platform builds of Chrome will need to have a cloud printing
321 // dialog as backup. It's just that on Chrome OS, it's the only 321 // dialog as backup. It's just that on Chrome OS, it's the only
322 // print dialog. 322 // print dialog.
323 if (url.host() == chrome::kChromeUIBluetoothInternalsHost) 323 if (url.host_piece() == chrome::kChromeUIBluetoothInternalsHost)
324 return &NewWebUI<BluetoothInternalsUI>; 324 return &NewWebUI<BluetoothInternalsUI>;
325 if (url.host() == chrome::kChromeUIComponentsHost) 325 if (url.host_piece() == chrome::kChromeUIComponentsHost)
326 return &NewWebUI<ComponentsUI>; 326 return &NewWebUI<ComponentsUI>;
327 if (url.spec() == chrome::kChromeUIConstrainedHTMLTestURL) 327 if (url.spec() == chrome::kChromeUIConstrainedHTMLTestURL)
328 return &NewWebUI<ConstrainedWebDialogUI>; 328 return &NewWebUI<ConstrainedWebDialogUI>;
329 if (url.host() == chrome::kChromeUICrashesHost) 329 if (url.host_piece() == chrome::kChromeUICrashesHost)
330 return &NewWebUI<CrashesUI>; 330 return &NewWebUI<CrashesUI>;
331 if (url.host() == chrome::kChromeUIDeviceLogHost) 331 if (url.host_piece() == chrome::kChromeUIDeviceLogHost)
332 return &NewWebUI<chromeos::DeviceLogUI>; 332 return &NewWebUI<chromeos::DeviceLogUI>;
333 if (url.host() == chrome::kChromeUIDomainReliabilityInternalsHost) 333 if (url.host_piece() == chrome::kChromeUIDomainReliabilityInternalsHost)
334 return &NewWebUI<DomainReliabilityInternalsUI>; 334 return &NewWebUI<DomainReliabilityInternalsUI>;
335 if (url.host() == chrome::kChromeUIFlagsHost) 335 if (url.host_piece() == chrome::kChromeUIFlagsHost)
336 return &NewWebUI<FlagsUI>; 336 return &NewWebUI<FlagsUI>;
337 if (url.host() == chrome::kChromeUIGCMInternalsHost) 337 if (url.host_piece() == chrome::kChromeUIGCMInternalsHost)
338 return &NewWebUI<GCMInternalsUI>; 338 return &NewWebUI<GCMInternalsUI>;
339 if (url.host() == chrome::kChromeUIHistoryFrameHost) 339 if (url.host_piece() == chrome::kChromeUIHistoryFrameHost)
340 return &NewWebUI<HistoryUI>; 340 return &NewWebUI<HistoryUI>;
341 if (url.host() == chrome::kChromeUIInstantHost) 341 if (url.host_piece() == chrome::kChromeUIInstantHost)
342 return &NewWebUI<InstantUI>; 342 return &NewWebUI<InstantUI>;
343 if (url.host() == chrome::kChromeUIInterstitialHost) 343 if (url.host_piece() == chrome::kChromeUIInterstitialHost)
344 return &NewWebUI<InterstitialUI>; 344 return &NewWebUI<InterstitialUI>;
345 if (url.host() == chrome::kChromeUIInvalidationsHost) 345 if (url.host_piece() == chrome::kChromeUIInvalidationsHost)
346 return &NewWebUI<InvalidationsUI>; 346 return &NewWebUI<InvalidationsUI>;
347 if (url.host() == chrome::kChromeUILocalStateHost) 347 if (url.host_piece() == chrome::kChromeUILocalStateHost)
348 return &NewWebUI<LocalStateUI>; 348 return &NewWebUI<LocalStateUI>;
349 if (url.host() == chrome::kChromeUINetExportHost) 349 if (url.host_piece() == chrome::kChromeUINetExportHost)
350 return &NewWebUI<NetExportUI>; 350 return &NewWebUI<NetExportUI>;
351 if (url.host() == chrome::kChromeUINetInternalsHost) 351 if (url.host_piece() == chrome::kChromeUINetInternalsHost)
352 return &NewWebUI<NetInternalsUI>; 352 return &NewWebUI<NetInternalsUI>;
353 if (url.host() == chrome::kChromeUIOmniboxHost) 353 if (url.host_piece() == chrome::kChromeUIOmniboxHost)
354 return &NewWebUI<OmniboxUI>; 354 return &NewWebUI<OmniboxUI>;
355 if (url.host() == chrome::kChromeUIPasswordManagerInternalsHost) 355 if (url.host_piece() == chrome::kChromeUIPasswordManagerInternalsHost)
356 return &NewWebUI<PasswordManagerInternalsUI>; 356 return &NewWebUI<PasswordManagerInternalsUI>;
357 if (url.host() == chrome::kChromeUIPredictorsHost) 357 if (url.host_piece() == chrome::kChromeUIPredictorsHost)
358 return &NewWebUI<PredictorsUI>; 358 return &NewWebUI<PredictorsUI>;
359 if (url.host() == chrome::kChromeUIProfilerHost) 359 if (url.host_piece() == chrome::kChromeUIProfilerHost)
360 return &NewWebUI<ProfilerUI>; 360 return &NewWebUI<ProfilerUI>;
361 if (url.host() == chrome::kChromeUISignInInternalsHost) 361 if (url.host_piece() == chrome::kChromeUISignInInternalsHost)
362 return &NewWebUI<SignInInternalsUI>; 362 return &NewWebUI<SignInInternalsUI>;
363 if (url.host() == chrome::kChromeUISuggestionsHost) 363 if (url.host_piece() == chrome::kChromeUISuggestionsHost)
364 return &NewWebUI<suggestions::SuggestionsUI>; 364 return &NewWebUI<suggestions::SuggestionsUI>;
365 if (url.host() == chrome::kChromeUISupervisedUserInternalsHost) 365 if (url.host_piece() == chrome::kChromeUISupervisedUserInternalsHost)
366 return &NewWebUI<SupervisedUserInternalsUI>; 366 return &NewWebUI<SupervisedUserInternalsUI>;
367 if (url.host() == chrome::kChromeUISupervisedUserPassphrasePageHost) 367 if (url.host_piece() == chrome::kChromeUISupervisedUserPassphrasePageHost)
368 return &NewWebUI<ConstrainedWebDialogUI>; 368 return &NewWebUI<ConstrainedWebDialogUI>;
369 if (url.host() == chrome::kChromeUISyncInternalsHost) 369 if (url.host_piece() == chrome::kChromeUISyncInternalsHost)
370 return &NewWebUI<SyncInternalsUI>; 370 return &NewWebUI<SyncInternalsUI>;
371 if (url.host() == chrome::kChromeUISyncResourcesHost) 371 if (url.host_piece() == chrome::kChromeUISyncResourcesHost)
372 return &NewWebUI<WebDialogUI>; 372 return &NewWebUI<WebDialogUI>;
373 if (url.host() == chrome::kChromeUITaskSchedulerInternalsHost) 373 if (url.host_piece() == chrome::kChromeUITaskSchedulerInternalsHost)
374 return &NewWebUI<TaskSchedulerInternalsUI>; 374 return &NewWebUI<TaskSchedulerInternalsUI>;
375 if (url.host() == chrome::kChromeUITranslateInternalsHost) 375 if (url.host_piece() == chrome::kChromeUITranslateInternalsHost)
376 return &NewWebUI<TranslateInternalsUI>; 376 return &NewWebUI<TranslateInternalsUI>;
377 if (url.host() == chrome::kChromeUIUsbInternalsHost) 377 if (url.host_piece() == chrome::kChromeUIUsbInternalsHost)
378 return &NewWebUI<UsbInternalsUI>; 378 return &NewWebUI<UsbInternalsUI>;
379 if (url.host() == chrome::kChromeUIUserActionsHost) 379 if (url.host_piece() == chrome::kChromeUIUserActionsHost)
380 return &NewWebUI<UserActionsUI>; 380 return &NewWebUI<UserActionsUI>;
381 if (url.host() == chrome::kChromeUIVersionHost) 381 if (url.host_piece() == chrome::kChromeUIVersionHost)
382 return &NewWebUI<VersionUI>; 382 return &NewWebUI<VersionUI>;
383 383
384 /**************************************************************************** 384 /****************************************************************************
385 * OS Specific #defines 385 * OS Specific #defines
386 ***************************************************************************/ 386 ***************************************************************************/
387 #if !defined(OS_ANDROID) 387 #if !defined(OS_ANDROID)
388 #if !defined(OS_CHROMEOS) 388 #if !defined(OS_CHROMEOS)
389 // AppLauncherPage is not needed on Android or ChromeOS. 389 // AppLauncherPage is not needed on Android or ChromeOS.
390 if (url.host() == chrome::kChromeUIAppLauncherPageHost && 390 if (url.host_piece() == chrome::kChromeUIAppLauncherPageHost && profile &&
391 profile && extensions::ExtensionSystem::Get(profile)-> 391 extensions::ExtensionSystem::Get(profile)->extension_service()) {
392 extension_service()) {
393 return &NewWebUI<AppLauncherPageUI>; 392 return &NewWebUI<AppLauncherPageUI>;
394 } 393 }
395 #endif // !defined(OS_CHROMEOS) 394 #endif // !defined(OS_CHROMEOS)
396 395
397 // Bookmarks are part of NTP on Android. 396 // Bookmarks are part of NTP on Android.
398 if (url.host() == chrome::kChromeUIBookmarksHost) { 397 if (url.host_piece() == chrome::kChromeUIBookmarksHost) {
399 return MdBookmarksUI::IsEnabled() ? &NewWebUI<MdBookmarksUI> 398 return MdBookmarksUI::IsEnabled() ? &NewWebUI<MdBookmarksUI>
400 : &NewWebUI<BookmarksUI>; 399 : &NewWebUI<BookmarksUI>;
401 } 400 }
402 // Downloads list on Android uses the built-in download manager. 401 // Downloads list on Android uses the built-in download manager.
403 if (url.host() == chrome::kChromeUIDownloadsHost) 402 if (url.host_piece() == chrome::kChromeUIDownloadsHost)
404 return &NewWebUI<MdDownloadsUI>; 403 return &NewWebUI<MdDownloadsUI>;
405 // Material Design feedback. Feedback is implemented separately in 404 // Material Design feedback. Feedback is implemented separately in
406 // Android. 405 // Android.
407 if (url.host() == chrome::kChromeUIFeedbackHost && 406 if (url.host_piece() == chrome::kChromeUIFeedbackHost &&
408 ::switches::MdFeedbackEnabled()) { 407 ::switches::MdFeedbackEnabled()) {
409 return &NewWebUI<MdFeedbackUI>; 408 return &NewWebUI<MdFeedbackUI>;
410 } 409 }
411 // Help is implemented with native UI elements on Android. 410 // Help is implemented with native UI elements on Android.
412 if (url.host() == chrome::kChromeUIHelpFrameHost) 411 if (url.host_piece() == chrome::kChromeUIHelpFrameHost)
413 return &NewWebUI<HelpUI>; 412 return &NewWebUI<HelpUI>;
414 // Identity API is not available on Android. 413 // Identity API is not available on Android.
415 if (url.host() == chrome::kChromeUIIdentityInternalsHost) 414 if (url.host_piece() == chrome::kChromeUIIdentityInternalsHost)
416 return &NewWebUI<IdentityInternalsUI>; 415 return &NewWebUI<IdentityInternalsUI>;
417 if (url.host() == chrome::kChromeUINewTabHost) 416 if (url.host_piece() == chrome::kChromeUINewTabHost)
418 return &NewWebUI<NewTabUI>; 417 return &NewWebUI<NewTabUI>;
419 if (url.host() == chrome::kChromeUIMdSettingsHost) 418 if (url.host_piece() == chrome::kChromeUIMdSettingsHost)
420 return &NewWebUI<settings::MdSettingsUI>; 419 return &NewWebUI<settings::MdSettingsUI>;
421 // If the material design extensions page is enabled, it gets its own host. 420 // If the material design extensions page is enabled, it gets its own host.
422 // Otherwise, it's handled by the uber settings page. 421 // Otherwise, it's handled by the uber settings page.
423 if (url.host() == chrome::kChromeUIExtensionsHost && 422 if (url.host_piece() == chrome::kChromeUIExtensionsHost &&
424 base::FeatureList::IsEnabled(features::kMaterialDesignExtensions)) { 423 base::FeatureList::IsEnabled(features::kMaterialDesignExtensions)) {
425 return &NewWebUI<extensions::ExtensionsUI>; 424 return &NewWebUI<extensions::ExtensionsUI>;
426 } 425 }
427 // Material Design history is on its own host, rather than on an Uber page. 426 // Material Design history is on its own host, rather than on an Uber page.
428 if (MdHistoryUI::IsEnabled(profile) && 427 if (MdHistoryUI::IsEnabled(profile) &&
429 url.host() == chrome::kChromeUIHistoryHost) { 428 url.host_piece() == chrome::kChromeUIHistoryHost) {
430 return &NewWebUI<MdHistoryUI>; 429 return &NewWebUI<MdHistoryUI>;
431 } 430 }
432 // Material Design Settings gets its own host, if enabled. 431 // Material Design Settings gets its own host, if enabled.
433 if (base::FeatureList::IsEnabled(features::kMaterialDesignSettings) && 432 if (base::FeatureList::IsEnabled(features::kMaterialDesignSettings) &&
434 url.host() == chrome::kChromeUISettingsHost) { 433 url.host_piece() == chrome::kChromeUISettingsHost) {
435 return &NewWebUI<settings::MdSettingsUI>; 434 return &NewWebUI<settings::MdSettingsUI>;
436 } 435 }
437 if (url.host() == chrome::kChromeUIQuotaInternalsHost) 436 if (url.host_piece() == chrome::kChromeUIQuotaInternalsHost)
438 return &NewWebUI<QuotaInternalsUI>; 437 return &NewWebUI<QuotaInternalsUI>;
439 // Settings are implemented with native UI elements on Android. 438 // Settings are implemented with native UI elements on Android.
440 // Handle chrome://settings if settings in a window and about in settings 439 // Handle chrome://settings if settings in a window and about in settings
441 // are enabled. 440 // are enabled.
442 if (url.host() == chrome::kChromeUISettingsFrameHost || 441 if (url.host_piece() == chrome::kChromeUISettingsFrameHost ||
443 (url.host() == chrome::kChromeUISettingsHost && 442 (url.host_piece() == chrome::kChromeUISettingsHost &&
444 ::switches::AboutInSettingsEnabled())) { 443 ::switches::AboutInSettingsEnabled())) {
445 return &NewWebUI<options::OptionsUI>; 444 return &NewWebUI<options::OptionsUI>;
446 } 445 }
447 if (url.host() == chrome::kChromeUISyncFileSystemInternalsHost) 446 if (url.host_piece() == chrome::kChromeUISyncFileSystemInternalsHost)
448 return &NewWebUI<SyncFileSystemInternalsUI>; 447 return &NewWebUI<SyncFileSystemInternalsUI>;
449 if (url.host() == chrome::kChromeUISystemInfoHost) 448 if (url.host_piece() == chrome::kChromeUISystemInfoHost)
450 return &NewWebUI<SystemInfoUI>; 449 return &NewWebUI<SystemInfoUI>;
451 // Uber frame is not used on Android. 450 // Uber frame is not used on Android.
452 if (url.host() == chrome::kChromeUIUberFrameHost) 451 if (url.host_piece() == chrome::kChromeUIUberFrameHost)
453 return &NewWebUI<UberFrameUI>; 452 return &NewWebUI<UberFrameUI>;
454 // Uber page is not used on Android. 453 // Uber page is not used on Android.
455 if (url.host() == chrome::kChromeUIUberHost) 454 if (url.host_piece() == chrome::kChromeUIUberHost)
456 return &NewWebUI<UberUI>; 455 return &NewWebUI<UberUI>;
457 #endif // !defined(OS_ANDROID) 456 #endif // !defined(OS_ANDROID)
458 #if defined(OS_WIN) 457 #if defined(OS_WIN)
459 if (url.host() == chrome::kChromeUIConflictsHost) 458 if (url.host_piece() == chrome::kChromeUIConflictsHost)
460 return &NewWebUI<ConflictsUI>; 459 return &NewWebUI<ConflictsUI>;
461 if (url.host() == chrome::kChromeUIMetroFlowHost) 460 if (url.host_piece() == chrome::kChromeUIMetroFlowHost)
462 return &NewWebUI<SetAsDefaultBrowserUI>; 461 return &NewWebUI<SetAsDefaultBrowserUI>;
463 #endif 462 #endif
464 #if defined(OS_CHROMEOS) 463 #if defined(OS_CHROMEOS)
465 if (url.host() == chrome::kChromeUIBluetoothPairingHost) 464 if (url.host_piece() == chrome::kChromeUIBluetoothPairingHost)
466 return &NewWebUI<chromeos::BluetoothPairingUI>; 465 return &NewWebUI<chromeos::BluetoothPairingUI>;
467 if (url.host() == chrome::kChromeUICertificateManagerHost) 466 if (url.host_piece() == chrome::kChromeUICertificateManagerHost)
468 return &NewWebUI<chromeos::CertificateManagerDialogUI>; 467 return &NewWebUI<chromeos::CertificateManagerDialogUI>;
469 if (url.host() == chrome::kChromeUIChooseMobileNetworkHost) 468 if (url.host_piece() == chrome::kChromeUIChooseMobileNetworkHost)
470 return &NewWebUI<chromeos::ChooseMobileNetworkUI>; 469 return &NewWebUI<chromeos::ChooseMobileNetworkUI>;
471 if (url.host() == chrome::kChromeUICryptohomeHost) 470 if (url.host_piece() == chrome::kChromeUICryptohomeHost)
472 return &NewWebUI<chromeos::CryptohomeUI>; 471 return &NewWebUI<chromeos::CryptohomeUI>;
473 if (url.host() == chrome::kChromeUIDriveInternalsHost) 472 if (url.host_piece() == chrome::kChromeUIDriveInternalsHost)
474 return &NewWebUI<chromeos::DriveInternalsUI>; 473 return &NewWebUI<chromeos::DriveInternalsUI>;
475 if (url.host() == chrome::kChromeUIFirstRunHost) 474 if (url.host_piece() == chrome::kChromeUIFirstRunHost)
476 return &NewWebUI<chromeos::FirstRunUI>; 475 return &NewWebUI<chromeos::FirstRunUI>;
477 if (url.host() == chrome::kChromeUIKeyboardOverlayHost) 476 if (url.host_piece() == chrome::kChromeUIKeyboardOverlayHost)
478 return &NewWebUI<KeyboardOverlayUI>; 477 return &NewWebUI<KeyboardOverlayUI>;
479 if (url.host() == chrome::kChromeUIMobileSetupHost) 478 if (url.host_piece() == chrome::kChromeUIMobileSetupHost)
480 return &NewWebUI<MobileSetupUI>; 479 return &NewWebUI<MobileSetupUI>;
481 if (url.host() == chrome::kChromeUINetworkHost) 480 if (url.host_piece() == chrome::kChromeUINetworkHost)
482 return &NewWebUI<chromeos::NetworkUI>; 481 return &NewWebUI<chromeos::NetworkUI>;
483 if (url.host() == chrome::kChromeUIOobeHost) 482 if (url.host_piece() == chrome::kChromeUIOobeHost)
484 return &NewWebUI<chromeos::OobeUI>; 483 return &NewWebUI<chromeos::OobeUI>;
485 if (url.host() == chrome::kChromeUIPowerHost) 484 if (url.host_piece() == chrome::kChromeUIPowerHost)
486 return &NewWebUI<chromeos::PowerUI>; 485 return &NewWebUI<chromeos::PowerUI>;
487 if (url.host() == proximity_auth::kChromeUIProximityAuthHost) 486 if (url.host_piece() == proximity_auth::kChromeUIProximityAuthHost)
488 return &NewWebUI<proximity_auth::ProximityAuthUI>; 487 return &NewWebUI<proximity_auth::ProximityAuthUI>;
489 if (url.host() == chrome::kChromeUIProxySettingsHost) 488 if (url.host_piece() == chrome::kChromeUIProxySettingsHost)
490 return &NewWebUI<chromeos::ProxySettingsUI>; 489 return &NewWebUI<chromeos::ProxySettingsUI>;
491 if (url.host() == chrome::kChromeUISetTimeHost) 490 if (url.host_piece() == chrome::kChromeUISetTimeHost)
492 return &NewWebUI<chromeos::SetTimeUI>; 491 return &NewWebUI<chromeos::SetTimeUI>;
493 if (url.host() == chrome::kChromeUISimUnlockHost) 492 if (url.host_piece() == chrome::kChromeUISimUnlockHost)
494 return &NewWebUI<chromeos::SimUnlockUI>; 493 return &NewWebUI<chromeos::SimUnlockUI>;
495 if (url.host() == chrome::kChromeUISlowHost) 494 if (url.host_piece() == chrome::kChromeUISlowHost)
496 return &NewWebUI<chromeos::SlowUI>; 495 return &NewWebUI<chromeos::SlowUI>;
497 if (url.host() == chrome::kChromeUISlowTraceHost) 496 if (url.host_piece() == chrome::kChromeUISlowTraceHost)
498 return &NewWebUI<chromeos::SlowTraceController>; 497 return &NewWebUI<chromeos::SlowTraceController>;
499 if (url.host() == chrome::kChromeUIVoiceSearchHost) 498 if (url.host_piece() == chrome::kChromeUIVoiceSearchHost)
500 return &NewWebUI<VoiceSearchUI>; 499 return &NewWebUI<VoiceSearchUI>;
501 #if !defined(OFFICIAL_BUILD) 500 #if !defined(OFFICIAL_BUILD)
502 if (!base::SysInfo::IsRunningOnChromeOS()) { 501 if (!base::SysInfo::IsRunningOnChromeOS()) {
503 if (url.host() == chrome::kChromeUIDeviceEmulatorHost) 502 if (url.host_piece() == chrome::kChromeUIDeviceEmulatorHost)
504 return &NewWebUI<DeviceEmulatorUI>; 503 return &NewWebUI<DeviceEmulatorUI>;
505 } 504 }
506 #endif // !defined(OFFICIAL_BUILD) 505 #endif // !defined(OFFICIAL_BUILD)
507 #endif // defined(OS_CHROMEOS) 506 #endif // defined(OS_CHROMEOS)
508 #if defined(OS_ANDROID) 507 #if defined(OS_ANDROID)
509 if (url.host() == chrome::kChromeUIOfflineInternalsHost) 508 if (url.host_piece() == chrome::kChromeUIOfflineInternalsHost)
510 return &NewWebUI<OfflineInternalsUI>; 509 return &NewWebUI<OfflineInternalsUI>;
511 if (url.host() == chrome::kChromeUIPopularSitesInternalsHost) 510 if (url.host_piece() == chrome::kChromeUIPopularSitesInternalsHost)
512 return &NewWebUI<PopularSitesInternalsUI>; 511 return &NewWebUI<PopularSitesInternalsUI>;
513 if (url.host() == chrome::kChromeUISnippetsInternalsHost && 512 if (url.host_piece() == chrome::kChromeUISnippetsInternalsHost &&
514 !profile->IsOffTheRecord()) 513 !profile->IsOffTheRecord())
515 return &NewWebUI<SnippetsInternalsUI>; 514 return &NewWebUI<SnippetsInternalsUI>;
516 #if defined(ENABLE_VR_SHELL) || defined(ENABLE_WEBVR) 515 #if defined(ENABLE_VR_SHELL) || defined(ENABLE_WEBVR)
517 if (url.host() == chrome::kChromeUIVrShellUIHost) 516 if (url.host_piece() == chrome::kChromeUIVrShellUIHost)
518 return &NewWebUI<VrShellUIUI>; 517 return &NewWebUI<VrShellUIUI>;
519 #endif 518 #endif
520 #else 519 #else
521 if (url.SchemeIs(content::kChromeDevToolsScheme)) 520 if (url.SchemeIs(content::kChromeDevToolsScheme))
522 return &NewWebUI<DevToolsUI>; 521 return &NewWebUI<DevToolsUI>;
523 522
524 // chrome://inspect isn't supported on Android nor iOS. Page debugging is 523 // chrome://inspect isn't supported on Android nor iOS. Page debugging is
525 // handled by a remote devtools on the host machine, and other elements, i.e. 524 // handled by a remote devtools on the host machine, and other elements, i.e.
526 // extensions aren't supported. 525 // extensions aren't supported.
527 if (url.host() == chrome::kChromeUIInspectHost) 526 if (url.host_piece() == chrome::kChromeUIInspectHost)
528 return &NewWebUI<InspectUI>; 527 return &NewWebUI<InspectUI>;
529 #endif 528 #endif
530 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) 529 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID)
531 if (url.host() == chrome::kChromeUIChromeSigninHost) 530 if (url.host_piece() == chrome::kChromeUIChromeSigninHost)
532 return &NewWebUI<InlineLoginUI>; 531 return &NewWebUI<InlineLoginUI>;
533 if (url.host() == chrome::kChromeUIMdUserManagerHost) 532 if (url.host_piece() == chrome::kChromeUIMdUserManagerHost)
534 return &NewWebUI<MDUserManagerUI>; 533 return &NewWebUI<MDUserManagerUI>;
535 if (url.host() == chrome::kChromeUISigninErrorHost) 534 if (url.host_piece() == chrome::kChromeUISigninErrorHost)
536 return &NewWebUI<SigninErrorUI>; 535 return &NewWebUI<SigninErrorUI>;
537 if (url.host() == chrome::kChromeUISyncConfirmationHost) 536 if (url.host_piece() == chrome::kChromeUISyncConfirmationHost)
538 return &NewWebUI<SyncConfirmationUI>; 537 return &NewWebUI<SyncConfirmationUI>;
539 if (url.host() == chrome::kChromeUIProfileSigninConfirmationHost) 538 if (url.host_piece() == chrome::kChromeUIProfileSigninConfirmationHost)
540 return &NewWebUI<ProfileSigninConfirmationUI>; 539 return &NewWebUI<ProfileSigninConfirmationUI>;
541 if (url.host() == chrome::kChromeUIWelcomeHost) 540 if (url.host_piece() == chrome::kChromeUIWelcomeHost)
542 return &NewWebUI<WelcomeUI>; 541 return &NewWebUI<WelcomeUI>;
543 #endif 542 #endif
544 #if defined(OS_WIN) 543 #if defined(OS_WIN)
545 if (url.host() == chrome::kChromeUIWelcomeWin10Host) 544 if (url.host_piece() == chrome::kChromeUIWelcomeWin10Host)
546 return &NewWebUI<WelcomeWin10UI>; 545 return &NewWebUI<WelcomeWin10UI>;
547 #endif // defined(OS_WIN) 546 #endif // defined(OS_WIN)
548 547
549 /**************************************************************************** 548 /****************************************************************************
550 * Other #defines and special logics. 549 * Other #defines and special logics.
551 ***************************************************************************/ 550 ***************************************************************************/
552 #if !defined(DISABLE_NACL) 551 #if !defined(DISABLE_NACL)
553 if (url.host() == chrome::kChromeUINaClHost) 552 if (url.host_piece() == chrome::kChromeUINaClHost)
554 return &NewWebUI<NaClUI>; 553 return &NewWebUI<NaClUI>;
555 #endif 554 #endif
556 #if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA) 555 #if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA)
557 if (url.host() == chrome::kChromeUITabModalConfirmDialogHost) { 556 if (url.host_piece() == chrome::kChromeUITabModalConfirmDialogHost) {
558 return &NewWebUI<ConstrainedWebDialogUI>; 557 return &NewWebUI<ConstrainedWebDialogUI>;
559 } 558 }
560 #endif 559 #endif
561 #if (defined(USE_NSS_CERTS) || defined(USE_OPENSSL_CERTS)) && defined(USE_AURA) 560 #if (defined(USE_NSS_CERTS) || defined(USE_OPENSSL_CERTS)) && defined(USE_AURA)
562 if (url.host() == chrome::kChromeUICertificateViewerHost) 561 if (url.host_piece() == chrome::kChromeUICertificateViewerHost)
563 return &NewWebUI<CertificateViewerUI>; 562 return &NewWebUI<CertificateViewerUI>;
564 #if defined(OS_CHROMEOS) 563 #if defined(OS_CHROMEOS)
565 if (url.host() == chrome::kChromeUICertificateViewerDialogHost) 564 if (url.host_piece() == chrome::kChromeUICertificateViewerDialogHost)
566 return &NewWebUI<CertificateViewerModalDialogUI>; 565 return &NewWebUI<CertificateViewerModalDialogUI>;
567 #endif 566 #endif
568 #endif // (USE_NSS_CERTS || USE_OPENSSL_CERTS) && USE_AURA 567 #endif // (USE_NSS_CERTS || USE_OPENSSL_CERTS) && USE_AURA
569 568
570 if (url.host() == chrome::kChromeUIPolicyHost) 569 if (url.host_piece() == chrome::kChromeUIPolicyHost)
571 return &NewWebUI<PolicyUI>; 570 return &NewWebUI<PolicyUI>;
572 if (url.host() == chrome::kChromeUIMdPolicyHost && 571 if (url.host_piece() == chrome::kChromeUIMdPolicyHost &&
573 switches::MdPolicyPageEnabled()) { 572 switches::MdPolicyPageEnabled()) {
574 return &NewWebUI<PolicyMaterialDesignUI>; 573 return &NewWebUI<PolicyMaterialDesignUI>;
575 } 574 }
576 575
577 #if BUILDFLAG(ENABLE_APP_LIST) 576 #if BUILDFLAG(ENABLE_APP_LIST)
578 if (url.host() == chrome::kChromeUIAppListStartPageHost) 577 if (url.host_piece() == chrome::kChromeUIAppListStartPageHost)
579 return &NewWebUI<app_list::StartPageUI>; 578 return &NewWebUI<app_list::StartPageUI>;
580 #endif 579 #endif
581 #if BUILDFLAG(ENABLE_EXTENSIONS) 580 #if BUILDFLAG(ENABLE_EXTENSIONS)
582 if (url.host() == chrome::kChromeUIExtensionsFrameHost) 581 if (url.host_piece() == chrome::kChromeUIExtensionsFrameHost)
583 return &NewWebUI<extensions::ExtensionsUI>; 582 return &NewWebUI<extensions::ExtensionsUI>;
584 #endif 583 #endif
585 #if defined(ENABLE_PLUGINS) 584 #if defined(ENABLE_PLUGINS)
586 if (url.host() == chrome::kChromeUIFlashHost) 585 if (url.host_piece() == chrome::kChromeUIFlashHost)
587 return &NewWebUI<FlashUI>; 586 return &NewWebUI<FlashUI>;
588 if (url.host() == chrome::kChromeUIPluginsHost) 587 if (url.host_piece() == chrome::kChromeUIPluginsHost)
589 return &NewWebUI<PluginsUI>; 588 return &NewWebUI<PluginsUI>;
590 #endif 589 #endif
591 #if BUILDFLAG(ENABLE_PRINT_PREVIEW) 590 #if BUILDFLAG(ENABLE_PRINT_PREVIEW)
592 if (url.host() == chrome::kChromeUIPrintHost && 591 if (url.host_piece() == chrome::kChromeUIPrintHost &&
593 !profile->GetPrefs()->GetBoolean(prefs::kPrintPreviewDisabled)) { 592 !profile->GetPrefs()->GetBoolean(prefs::kPrintPreviewDisabled)) {
594 return &NewWebUI<PrintPreviewUI>; 593 return &NewWebUI<PrintPreviewUI>;
595 } 594 }
596 #endif 595 #endif
597 #if BUILDFLAG(ENABLE_SERVICE_DISCOVERY) 596 #if BUILDFLAG(ENABLE_SERVICE_DISCOVERY)
598 if (url.host() == chrome::kChromeUIDevicesHost) { 597 if (url.host_piece() == chrome::kChromeUIDevicesHost) {
599 return &NewWebUI<LocalDiscoveryUI>; 598 return &NewWebUI<LocalDiscoveryUI>;
600 } 599 }
601 #endif 600 #endif
602 #if defined(ENABLE_WEBRTC) 601 #if defined(ENABLE_WEBRTC)
603 if (url.host() == chrome::kChromeUIWebRtcLogsHost) 602 if (url.host_piece() == chrome::kChromeUIWebRtcLogsHost)
604 return &NewWebUI<WebRtcLogsUI>; 603 return &NewWebUI<WebRtcLogsUI>;
605 #endif 604 #endif
606 #if defined(ENABLE_MEDIA_ROUTER) 605 #if defined(ENABLE_MEDIA_ROUTER)
607 #if !defined(OS_ANDROID) 606 #if !defined(OS_ANDROID)
608 if (url.host() == chrome::kChromeUIMediaRouterHost && 607 if (url.host_piece() == chrome::kChromeUIMediaRouterHost &&
609 media_router::MediaRouterEnabled(profile)) { 608 media_router::MediaRouterEnabled(profile)) {
610 return &NewWebUI<media_router::MediaRouterUI>; 609 return &NewWebUI<media_router::MediaRouterUI>;
611 } 610 }
612 #endif 611 #endif
613 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS) 612 #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_CHROMEOS)
614 if (url.host() == chrome::kChromeUICastHost && 613 if (url.host_piece() == chrome::kChromeUICastHost &&
615 media_router::MediaRouterEnabled(profile)) { 614 media_router::MediaRouterEnabled(profile)) {
616 return &NewWebUI<CastUI>; 615 return &NewWebUI<CastUI>;
617 } 616 }
618 #endif 617 #endif
619 #endif 618 #endif
620 if (IsAboutUI(url)) 619 if (IsAboutUI(url))
621 return &NewWebUI<AboutUI>; 620 return &NewWebUI<AboutUI>;
622 621
623 if (dom_distiller::IsEnableDomDistillerSet() && 622 if (dom_distiller::IsEnableDomDistillerSet() &&
624 url.host() == dom_distiller::kChromeUIDomDistillerHost) { 623 url.host_piece() == dom_distiller::kChromeUIDomDistillerHost) {
625 return &NewWebUI<dom_distiller::DomDistillerUi>; 624 return &NewWebUI<dom_distiller::DomDistillerUi>;
626 } 625 }
627 626
628 if (SiteEngagementService::IsEnabled() && 627 if (SiteEngagementService::IsEnabled() &&
629 url.host() == chrome::kChromeUISiteEngagementHost) { 628 url.host_piece() == chrome::kChromeUISiteEngagementHost) {
630 return &NewWebUI<SiteEngagementUI>; 629 return &NewWebUI<SiteEngagementUI>;
631 } 630 }
632 631
633 return NULL; 632 return NULL;
634 } 633 }
635 634
636 void RunFaviconCallbackAsync( 635 void RunFaviconCallbackAsync(
637 const favicon_base::FaviconResultsCallback& callback, 636 const favicon_base::FaviconResultsCallback& callback,
638 const std::vector<favicon_base::FaviconRawBitmapResult>* results) { 637 const std::vector<favicon_base::FaviconRawBitmapResult>* results) {
639 base::ThreadTaskRunnerHandle::Get()->PostTask( 638 base::ThreadTaskRunnerHandle::Get()->PostTask(
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
747 } 746 }
748 747
749 ChromeWebUIControllerFactory::~ChromeWebUIControllerFactory() { 748 ChromeWebUIControllerFactory::~ChromeWebUIControllerFactory() {
750 } 749 }
751 750
752 base::RefCountedMemory* ChromeWebUIControllerFactory::GetFaviconResourceBytes( 751 base::RefCountedMemory* ChromeWebUIControllerFactory::GetFaviconResourceBytes(
753 const GURL& page_url, ui::ScaleFactor scale_factor) const { 752 const GURL& page_url, ui::ScaleFactor scale_factor) const {
754 #if !defined(OS_ANDROID) // Bookmarks are part of NTP on Android. 753 #if !defined(OS_ANDROID) // Bookmarks are part of NTP on Android.
755 // The bookmark manager is a chrome extension, so we have to check for it 754 // The bookmark manager is a chrome extension, so we have to check for it
756 // before we check for extension scheme. 755 // before we check for extension scheme.
757 if (page_url.host() == extension_misc::kBookmarkManagerId || 756 if (page_url.host_piece() == extension_misc::kBookmarkManagerId ||
758 page_url.host() == chrome::kChromeUIBookmarksHost) { 757 page_url.host_piece() == chrome::kChromeUIBookmarksHost) {
759 return BookmarksUI::GetFaviconResourceBytes(scale_factor); 758 return BookmarksUI::GetFaviconResourceBytes(scale_factor);
760 } 759 }
761 760
762 // The extension scheme is handled in GetFaviconForURL. 761 // The extension scheme is handled in GetFaviconForURL.
763 if (page_url.SchemeIs(extensions::kExtensionScheme)) { 762 if (page_url.SchemeIs(extensions::kExtensionScheme)) {
764 NOTREACHED(); 763 NOTREACHED();
765 return NULL; 764 return NULL;
766 } 765 }
767 #endif 766 #endif
768 767
769 if (!content::HasWebUIScheme(page_url)) 768 if (!content::HasWebUIScheme(page_url))
770 return NULL; 769 return NULL;
771 770
772 if (page_url.host() == chrome::kChromeUIComponentsHost) 771 if (page_url.host_piece() == chrome::kChromeUIComponentsHost)
773 return ComponentsUI::GetFaviconResourceBytes(scale_factor); 772 return ComponentsUI::GetFaviconResourceBytes(scale_factor);
774 773
775 #if defined(OS_WIN) 774 #if defined(OS_WIN)
776 if (page_url.host() == chrome::kChromeUIConflictsHost) 775 if (page_url.host_piece() == chrome::kChromeUIConflictsHost)
777 return ConflictsUI::GetFaviconResourceBytes(scale_factor); 776 return ConflictsUI::GetFaviconResourceBytes(scale_factor);
778 #endif 777 #endif
779 778
780 if (page_url.host() == chrome::kChromeUICrashesHost) 779 if (page_url.host_piece() == chrome::kChromeUICrashesHost)
781 return CrashesUI::GetFaviconResourceBytes(scale_factor); 780 return CrashesUI::GetFaviconResourceBytes(scale_factor);
782 781
783 if (page_url.host() == chrome::kChromeUIFlagsHost) 782 if (page_url.host_piece() == chrome::kChromeUIFlagsHost)
784 return FlagsUI::GetFaviconResourceBytes(scale_factor); 783 return FlagsUI::GetFaviconResourceBytes(scale_factor);
785 784
786 if (page_url.host() == chrome::kChromeUIHistoryHost) 785 if (page_url.host_piece() == chrome::kChromeUIHistoryHost)
787 return HistoryUI::GetFaviconResourceBytes(scale_factor); 786 return HistoryUI::GetFaviconResourceBytes(scale_factor);
788 787
789 #if !defined(OS_ANDROID) 788 #if !defined(OS_ANDROID)
790 #if !defined(OS_CHROMEOS) 789 #if !defined(OS_CHROMEOS)
791 // The Apps launcher page is not available on android or ChromeOS. 790 // The Apps launcher page is not available on android or ChromeOS.
792 if (page_url.host() == chrome::kChromeUIAppLauncherPageHost) 791 if (page_url.host_piece() == chrome::kChromeUIAppLauncherPageHost)
793 return AppLauncherPageUI::GetFaviconResourceBytes(scale_factor); 792 return AppLauncherPageUI::GetFaviconResourceBytes(scale_factor);
794 #endif 793 #endif
795 794
796 // Flash is not available on android. 795 // Flash is not available on android.
797 if (page_url.host() == chrome::kChromeUIFlashHost) 796 if (page_url.host_piece() == chrome::kChromeUIFlashHost)
798 return FlashUI::GetFaviconResourceBytes(scale_factor); 797 return FlashUI::GetFaviconResourceBytes(scale_factor);
799 798
800 // Android uses the native download manager. 799 // Android uses the native download manager.
801 if (page_url.host() == chrome::kChromeUIDownloadsHost) 800 if (page_url.host_piece() == chrome::kChromeUIDownloadsHost)
802 return MdDownloadsUI::GetFaviconResourceBytes(scale_factor); 801 return MdDownloadsUI::GetFaviconResourceBytes(scale_factor);
803 802
804 // Android doesn't use the Options/Settings pages. 803 // Android doesn't use the Options/Settings pages.
805 if (page_url.host() == chrome::kChromeUISettingsHost || 804 if (page_url.host_piece() == chrome::kChromeUISettingsHost ||
806 page_url.host() == chrome::kChromeUISettingsFrameHost || 805 page_url.host_piece() == chrome::kChromeUISettingsFrameHost ||
807 page_url.host() == chrome::kChromeUIMdSettingsHost) 806 page_url.host_piece() == chrome::kChromeUIMdSettingsHost)
808 return settings_utils::GetFaviconResourceBytes(scale_factor); 807 return settings_utils::GetFaviconResourceBytes(scale_factor);
809 808
810 #if BUILDFLAG(ENABLE_EXTENSIONS) 809 #if BUILDFLAG(ENABLE_EXTENSIONS)
811 if (page_url.host() == chrome::kChromeUIExtensionsHost || 810 if (page_url.host_piece() == chrome::kChromeUIExtensionsHost ||
812 page_url.host() == chrome::kChromeUIExtensionsFrameHost) 811 page_url.host_piece() == chrome::kChromeUIExtensionsFrameHost)
813 return extensions::ExtensionsUI::GetFaviconResourceBytes(scale_factor); 812 return extensions::ExtensionsUI::GetFaviconResourceBytes(scale_factor);
814 #endif 813 #endif
815 814
816 // Android doesn't use the plugins pages. 815 // Android doesn't use the plugins pages.
817 if (page_url.host() == chrome::kChromeUIPluginsHost) 816 if (page_url.host_piece() == chrome::kChromeUIPluginsHost)
818 return PluginsUI::GetFaviconResourceBytes(scale_factor); 817 return PluginsUI::GetFaviconResourceBytes(scale_factor);
819 818
820 #endif 819 #endif
821 820
822 return NULL; 821 return NULL;
823 } 822 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/tabs/tab_strip_model.cc ('k') | chrome/browser/ui/webui/options/options_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698