| OLD | NEW |
| 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 <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 233 const extensions::Extension* extension = | 233 const extensions::Extension* extension = |
| 234 extensions::ExtensionRegistry::Get(profile)->enabled_extensions(). | 234 extensions::ExtensionRegistry::Get(profile)->enabled_extensions(). |
| 235 GetExtensionOrAppByURL(url); | 235 GetExtensionOrAppByURL(url); |
| 236 // Allow bindings for all packaged extensions and component hosted apps. | 236 // Allow bindings for all packaged extensions and component hosted apps. |
| 237 return extension && | 237 return extension && |
| 238 (!extension->is_hosted_app() || | 238 (!extension->is_hosted_app() || |
| 239 extension->location() == extensions::Manifest::COMPONENT); | 239 extension->location() == extensions::Manifest::COMPONENT); |
| 240 } | 240 } |
| 241 #endif | 241 #endif |
| 242 | 242 |
| 243 bool IsAboutUI(const GURL& url) { |
| 244 return (url.host() == chrome::kChromeUIChromeURLsHost || |
| 245 url.host() == chrome::kChromeUICreditsHost || |
| 246 url.host() == chrome::kChromeUIDNSHost || |
| 247 url.host() == chrome::kChromeUIMemoryHost || |
| 248 url.host() == chrome::kChromeUIMemoryRedirectHost || |
| 249 url.host() == chrome::kChromeUIStatsHost |
| 250 #if !defined(OS_ANDROID) |
| 251 || url.host() == chrome::kChromeUITermsHost |
| 252 #endif |
| 253 #if defined(OS_LINUX) || defined(OS_OPENBSD) |
| 254 || url.host() == chrome::kChromeUILinuxProxyConfigHost |
| 255 || url.host() == chrome::kChromeUISandboxHost |
| 256 #endif |
| 257 #if defined(OS_CHROMEOS) |
| 258 || url.host() == chrome::kChromeUIDiscardsHost |
| 259 || url.host() == chrome::kChromeUIOSCreditsHost |
| 260 #endif |
| 261 ); // NOLINT |
| 262 } |
| 263 |
| 243 // Returns a function that can be used to create the right type of WebUI for a | 264 // Returns a function that can be used to create the right type of WebUI for a |
| 244 // tab, based on its URL. Returns NULL if the URL doesn't have WebUI associated | 265 // tab, based on its URL. Returns NULL if the URL doesn't have WebUI associated |
| 245 // with it. | 266 // with it. |
| 246 WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, | 267 WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, |
| 247 Profile* profile, | 268 Profile* profile, |
| 248 const GURL& url) { | 269 const GURL& url) { |
| 249 #if defined(ENABLE_EXTENSIONS) | 270 #if defined(ENABLE_EXTENSIONS) |
| 250 if (NeedsExtensionWebUI(profile, url)) | 271 if (NeedsExtensionWebUI(profile, url)) |
| 251 return &NewWebUI<ExtensionWebUI>; | 272 return &NewWebUI<ExtensionWebUI>; |
| 252 #endif | 273 #endif |
| (...skipping 17 matching lines...) Expand all Loading... |
| 270 if (url.host() == chrome::kChromeUICloudPrintResourcesHost) | 291 if (url.host() == chrome::kChromeUICloudPrintResourcesHost) |
| 271 return &NewWebUI<ExternalWebDialogUI>; | 292 return &NewWebUI<ExternalWebDialogUI>; |
| 272 if (url.host() == chrome::kChromeUICloudPrintSetupHost) | 293 if (url.host() == chrome::kChromeUICloudPrintSetupHost) |
| 273 return &NewWebUI<WebDialogUI>; | 294 return &NewWebUI<WebDialogUI>; |
| 274 if (url.host() == chrome::kChromeUIComponentsHost) | 295 if (url.host() == chrome::kChromeUIComponentsHost) |
| 275 return &NewWebUI<ComponentsUI>; | 296 return &NewWebUI<ComponentsUI>; |
| 276 if (url.spec() == chrome::kChromeUIConstrainedHTMLTestURL) | 297 if (url.spec() == chrome::kChromeUIConstrainedHTMLTestURL) |
| 277 return &NewWebUI<ConstrainedWebDialogUI>; | 298 return &NewWebUI<ConstrainedWebDialogUI>; |
| 278 if (url.host() == chrome::kChromeUICrashesHost) | 299 if (url.host() == chrome::kChromeUICrashesHost) |
| 279 return &NewWebUI<CrashesUI>; | 300 return &NewWebUI<CrashesUI>; |
| 280 #if defined(ENABLE_SERVICE_DISCOVERY) | |
| 281 if (url.host() == chrome::kChromeUIDevicesHost) { | |
| 282 return &NewWebUI<LocalDiscoveryUI>; | |
| 283 } | |
| 284 #endif | |
| 285 if (url.host() == chrome::kChromeUIDomainReliabilityInternalsHost) | 301 if (url.host() == chrome::kChromeUIDomainReliabilityInternalsHost) |
| 286 return &NewWebUI<DomainReliabilityInternalsUI>; | 302 return &NewWebUI<DomainReliabilityInternalsUI>; |
| 287 if (url.host() == chrome::kChromeUIFlagsHost) | 303 if (url.host() == chrome::kChromeUIFlagsHost) |
| 288 return &NewWebUI<FlagsUI>; | 304 return &NewWebUI<FlagsUI>; |
| 289 if (url.host() == chrome::kChromeUIHistoryFrameHost) | 305 if (url.host() == chrome::kChromeUIHistoryFrameHost) |
| 290 return &NewWebUI<HistoryUI>; | 306 return &NewWebUI<HistoryUI>; |
| 291 if (url.host() == chrome::kChromeUIInstantHost) | 307 if (url.host() == chrome::kChromeUIInstantHost) |
| 292 return &NewWebUI<InstantUI>; | 308 return &NewWebUI<InstantUI>; |
| 293 if (url.host() == chrome::kChromeUIInterstitialHost) | 309 if (url.host() == chrome::kChromeUIInterstitialHost) |
| 294 return &NewWebUI<InterstitialUI>; | 310 return &NewWebUI<InterstitialUI>; |
| 295 if (url.host() == chrome::kChromeUIInvalidationsHost) | 311 if (url.host() == chrome::kChromeUIInvalidationsHost) |
| 296 return &NewWebUI<InvalidationsUI>; | 312 return &NewWebUI<InvalidationsUI>; |
| 297 if (url.host() == chrome::kChromeUISupervisedUserPassphrasePageHost) | 313 if (url.host() == chrome::kChromeUISupervisedUserPassphrasePageHost) |
| 298 return &NewWebUI<ConstrainedWebDialogUI>; | 314 return &NewWebUI<ConstrainedWebDialogUI>; |
| 299 if (url.host() == chrome::kChromeUIMemoryInternalsHost) | 315 if (url.host() == chrome::kChromeUIMemoryInternalsHost) |
| 300 return &NewWebUI<MemoryInternalsUI>; | 316 return &NewWebUI<MemoryInternalsUI>; |
| 301 #if !defined(DISABLE_NACL) | |
| 302 if (url.host() == chrome::kChromeUINaClHost) | |
| 303 return &NewWebUI<NaClUI>; | |
| 304 #endif | |
| 305 #if defined(OS_ANDROID) || defined(OS_IOS) | |
| 306 if (url.host() == chrome::kChromeUINetExportHost) | |
| 307 return &NewWebUI<NetExportUI>; | |
| 308 #endif | |
| 309 if (url.host() == chrome::kChromeUINetInternalsHost) | 317 if (url.host() == chrome::kChromeUINetInternalsHost) |
| 310 return &NewWebUI<NetInternalsUI>; | 318 return &NewWebUI<NetInternalsUI>; |
| 311 #if !defined(OS_ANDROID) | |
| 312 if (url.host() == chrome::kChromeUINewTabHost) | |
| 313 return &NewWebUI<NewTabUI>; | |
| 314 #endif | |
| 315 if (url.host() == chrome::kChromeUIOmniboxHost) | 319 if (url.host() == chrome::kChromeUIOmniboxHost) |
| 316 return &NewWebUI<OmniboxUI>; | 320 return &NewWebUI<OmniboxUI>; |
| 317 if (url.host() == chrome::kChromeUIPasswordManagerInternalsHost) | 321 if (url.host() == chrome::kChromeUIPasswordManagerInternalsHost) |
| 318 return &NewWebUI<PasswordManagerInternalsUI>; | 322 return &NewWebUI<PasswordManagerInternalsUI>; |
| 319 if (url.host() == chrome::kChromeUIPredictorsHost) | 323 if (url.host() == chrome::kChromeUIPredictorsHost) |
| 320 return &NewWebUI<PredictorsUI>; | 324 return &NewWebUI<PredictorsUI>; |
| 321 if (url.host() == chrome::kChromeUIProfilerHost) | 325 if (url.host() == chrome::kChromeUIProfilerHost) |
| 322 return &NewWebUI<ProfilerUI>; | 326 return &NewWebUI<ProfilerUI>; |
| 323 if (url.host() == chrome::kChromeUISignInInternalsHost) | 327 if (url.host() == chrome::kChromeUISignInInternalsHost) |
| 324 return &NewWebUI<SignInInternalsUI>; | 328 return &NewWebUI<SignInInternalsUI>; |
| 325 if (url.host() == chrome::kChromeUISyncInternalsHost) | 329 if (url.host() == chrome::kChromeUISyncInternalsHost) |
| 326 return &NewWebUI<SyncInternalsUI>; | 330 return &NewWebUI<SyncInternalsUI>; |
| 327 if (url.host() == chrome::kChromeUISyncResourcesHost) | 331 if (url.host() == chrome::kChromeUISyncResourcesHost) |
| 328 return &NewWebUI<WebDialogUI>; | 332 return &NewWebUI<WebDialogUI>; |
| 329 if (url.host() == chrome::kChromeUITranslateInternalsHost) | 333 if (url.host() == chrome::kChromeUITranslateInternalsHost) |
| 330 return &NewWebUI<TranslateInternalsUI>; | 334 return &NewWebUI<TranslateInternalsUI>; |
| 331 if (url.host() == chrome::kChromeUIUserActionsHost) | 335 if (url.host() == chrome::kChromeUIUserActionsHost) |
| 332 return &NewWebUI<UserActionsUI>; | 336 return &NewWebUI<UserActionsUI>; |
| 333 if (url.host() == chrome::kChromeUIVersionHost) | 337 if (url.host() == chrome::kChromeUIVersionHost) |
| 334 return &NewWebUI<VersionUI>; | 338 return &NewWebUI<VersionUI>; |
| 335 #if defined(ENABLE_EXTENSIONS) | |
| 336 if (url.host() == chrome::kChromeUIVoiceSearchHost) | |
| 337 return &NewWebUI<VoiceSearchUI>; | |
| 338 #endif | |
| 339 #if defined(ENABLE_WEBRTC) | |
| 340 if (url.host() == chrome::kChromeUIWebRtcLogsHost) | |
| 341 return &NewWebUI<WebRtcLogsUI>; | |
| 342 #endif | |
| 343 #if defined(ENABLE_APP_LIST) | |
| 344 if (url.host() == chrome::kChromeUIAppListStartPageHost) | |
| 345 return &NewWebUI<app_list::StartPageUI>; | |
| 346 #endif | |
| 347 | 339 |
| 348 /**************************************************************************** | 340 /**************************************************************************** |
| 349 * OS Specific #defines | 341 * OS Specific #defines |
| 350 ***************************************************************************/ | 342 ***************************************************************************/ |
| 351 #if !defined(OS_ANDROID) | 343 #if !defined(OS_ANDROID) |
| 352 // AppLauncherPage is not needed on Android. | 344 // AppLauncherPage is not needed on Android. |
| 353 if (url.host() == chrome::kChromeUIAppLauncherPageHost && | 345 if (url.host() == chrome::kChromeUIAppLauncherPageHost && |
| 354 profile && extensions::ExtensionSystem::Get(profile)-> | 346 profile && extensions::ExtensionSystem::Get(profile)-> |
| 355 extension_service()) { | 347 extension_service()) { |
| 356 return &NewWebUI<AppLauncherPageUI>; | 348 return &NewWebUI<AppLauncherPageUI>; |
| 357 } | 349 } |
| 358 // Bookmarks are part of NTP on Android. | 350 // Bookmarks are part of NTP on Android. |
| 359 if (url.host() == chrome::kChromeUIBookmarksHost) | 351 if (url.host() == chrome::kChromeUIBookmarksHost) |
| 360 return &NewWebUI<BookmarksUI>; | 352 return &NewWebUI<BookmarksUI>; |
| 361 // Downloads list on Android uses the built-in download manager. | 353 // Downloads list on Android uses the built-in download manager. |
| 362 if (url.host() == chrome::kChromeUIDownloadsHost) | 354 if (url.host() == chrome::kChromeUIDownloadsHost) |
| 363 return &NewWebUI<DownloadsUI>; | 355 return &NewWebUI<DownloadsUI>; |
| 364 // Flash is not available on android. | 356 // Flash is not available on android. |
| 365 if (url.host() == chrome::kChromeUIFlashHost) | 357 if (url.host() == chrome::kChromeUIFlashHost) |
| 366 return &NewWebUI<FlashUI>; | 358 return &NewWebUI<FlashUI>; |
| 367 if (url.host() == chrome::kChromeUIGCMInternalsHost) | 359 if (url.host() == chrome::kChromeUIGCMInternalsHost) |
| 368 return &NewWebUI<GCMInternalsUI>; | 360 return &NewWebUI<GCMInternalsUI>; |
| 369 // Help is implemented with native UI elements on Android. | 361 // Help is implemented with native UI elements on Android. |
| 370 if (url.host() == chrome::kChromeUIHelpFrameHost) | 362 if (url.host() == chrome::kChromeUIHelpFrameHost) |
| 371 return &NewWebUI<HelpUI>; | 363 return &NewWebUI<HelpUI>; |
| 372 // Identity API is not available on Android. | 364 // Identity API is not available on Android. |
| 373 if (url.host() == chrome::kChromeUIIdentityInternalsHost) | 365 if (url.host() == chrome::kChromeUIIdentityInternalsHost) |
| 374 return &NewWebUI<IdentityInternalsUI>; | 366 return &NewWebUI<IdentityInternalsUI>; |
| 367 if (url.host() == chrome::kChromeUINewTabHost) |
| 368 return &NewWebUI<NewTabUI>; |
| 375 // Android does not support plugins for now. | 369 // Android does not support plugins for now. |
| 376 if (url.host() == chrome::kChromeUIPluginsHost) | 370 if (url.host() == chrome::kChromeUIPluginsHost) |
| 377 return &NewWebUI<PluginsUI>; | 371 return &NewWebUI<PluginsUI>; |
| 378 if (url.host() == chrome::kChromeUIQuotaInternalsHost) | 372 if (url.host() == chrome::kChromeUIQuotaInternalsHost) |
| 379 return &NewWebUI<QuotaInternalsUI>; | 373 return &NewWebUI<QuotaInternalsUI>; |
| 380 // Settings are implemented with native UI elements on Android. | 374 // Settings are implemented with native UI elements on Android. |
| 381 // Handle chrome://settings if settings in a window and about in settings | 375 // Handle chrome://settings if settings in a window and about in settings |
| 382 // are enabled. | 376 // are enabled. |
| 383 if (url.host() == chrome::kChromeUISettingsFrameHost || | 377 if (url.host() == chrome::kChromeUISettingsFrameHost || |
| 384 (url.host() == chrome::kChromeUISettingsHost && | 378 (url.host() == chrome::kChromeUISettingsHost && |
| 385 ::switches::AboutInSettingsEnabled())) { | 379 ::switches::AboutInSettingsEnabled())) { |
| 386 return &NewWebUI<options::OptionsUI>; | 380 return &NewWebUI<options::OptionsUI>; |
| 387 } | 381 } |
| 388 if (url.host() == chrome::kChromeUISuggestionsInternalsHost) | 382 if (url.host() == chrome::kChromeUISuggestionsInternalsHost) |
| 389 return &NewWebUI<SuggestionsInternalsUI>; | 383 return &NewWebUI<SuggestionsInternalsUI>; |
| 390 if (url.host() == chrome::kChromeUISyncFileSystemInternalsHost) | 384 if (url.host() == chrome::kChromeUISyncFileSystemInternalsHost) |
| 391 return &NewWebUI<SyncFileSystemInternalsUI>; | 385 return &NewWebUI<SyncFileSystemInternalsUI>; |
| 392 if (url.host() == chrome::kChromeUISystemInfoHost) | 386 if (url.host() == chrome::kChromeUISystemInfoHost) |
| 393 return &NewWebUI<SystemInfoUI>; | 387 return &NewWebUI<SystemInfoUI>; |
| 394 // Uber frame is not used on Android. | 388 // Uber frame is not used on Android. |
| 395 if (url.host() == chrome::kChromeUIUberFrameHost) | 389 if (url.host() == chrome::kChromeUIUberFrameHost) |
| 396 return &NewWebUI<UberFrameUI>; | 390 return &NewWebUI<UberFrameUI>; |
| 397 // Uber page is not used on Android. | 391 // Uber page is not used on Android. |
| 398 if (url.host() == chrome::kChromeUIUberHost) | 392 if (url.host() == chrome::kChromeUIUberHost) |
| 399 return &NewWebUI<UberUI>; | 393 return &NewWebUI<UberUI>; |
| 400 #endif | 394 #endif // !defined(OS_ANDROID) |
| 401 #if defined(OS_WIN) | 395 #if defined(OS_WIN) |
| 402 if (url.host() == chrome::kChromeUIConflictsHost) | 396 if (url.host() == chrome::kChromeUIConflictsHost) |
| 403 return &NewWebUI<ConflictsUI>; | 397 return &NewWebUI<ConflictsUI>; |
| 404 if (url.host() == chrome::kChromeUIMetroFlowHost) | 398 if (url.host() == chrome::kChromeUIMetroFlowHost) |
| 405 return &NewWebUI<SetAsDefaultBrowserUI>; | 399 return &NewWebUI<SetAsDefaultBrowserUI>; |
| 406 #endif | 400 #endif |
| 407 #if (defined(USE_NSS) || defined(USE_OPENSSL_CERTS)) && defined(USE_AURA) | |
| 408 if (url.host() == chrome::kChromeUICertificateViewerHost) | |
| 409 return &NewWebUI<CertificateViewerUI>; | |
| 410 #if defined(OS_CHROMEOS) | |
| 411 if (url.host() == chrome::kChromeUICertificateViewerDialogHost) | |
| 412 return &NewWebUI<CertificateViewerModalDialogUI>; | |
| 413 #endif | |
| 414 #endif | |
| 415 #if defined(OS_CHROMEOS) | 401 #if defined(OS_CHROMEOS) |
| 416 if (url.host() == chrome::kChromeUIBluetoothPairingHost) | 402 if (url.host() == chrome::kChromeUIBluetoothPairingHost) |
| 417 return &NewWebUI<chromeos::BluetoothPairingUI>; | 403 return &NewWebUI<chromeos::BluetoothPairingUI>; |
| 418 if (url.host() == chrome::kChromeUICertificateManagerHost) | 404 if (url.host() == chrome::kChromeUICertificateManagerHost) |
| 419 return &NewWebUI<chromeos::CertificateManagerDialogUI>; | 405 return &NewWebUI<chromeos::CertificateManagerDialogUI>; |
| 420 if (url.host() == chrome::kChromeUIChargerReplacementHost) | 406 if (url.host() == chrome::kChromeUIChargerReplacementHost) |
| 421 return &NewWebUI<chromeos::ChargerReplacementUI>; | 407 return &NewWebUI<chromeos::ChargerReplacementUI>; |
| 422 if (url.host() == chrome::kChromeUIChooseMobileNetworkHost) | 408 if (url.host() == chrome::kChromeUIChooseMobileNetworkHost) |
| 423 return &NewWebUI<chromeos::ChooseMobileNetworkUI>; | 409 return &NewWebUI<chromeos::ChooseMobileNetworkUI>; |
| 424 if (url.host() == chrome::kChromeUICryptohomeHost) | 410 if (url.host() == chrome::kChromeUICryptohomeHost) |
| (...skipping 26 matching lines...) Expand all Loading... |
| 451 return &NewWebUI<chromeos::SimUnlockUI>; | 437 return &NewWebUI<chromeos::SimUnlockUI>; |
| 452 if (url.host() == chrome::kChromeUISlowHost) | 438 if (url.host() == chrome::kChromeUISlowHost) |
| 453 return &NewWebUI<chromeos::SlowUI>; | 439 return &NewWebUI<chromeos::SlowUI>; |
| 454 if (url.host() == chrome::kChromeUISlowTraceHost) | 440 if (url.host() == chrome::kChromeUISlowTraceHost) |
| 455 return &NewWebUI<chromeos::SlowTraceController>; | 441 return &NewWebUI<chromeos::SlowTraceController>; |
| 456 if (url.host() == chrome::kChromeUINetworkHost) | 442 if (url.host() == chrome::kChromeUINetworkHost) |
| 457 return &NewWebUI<chromeos::NetworkUI>; | 443 return &NewWebUI<chromeos::NetworkUI>; |
| 458 if (url.host() == chrome::kChromeUIPowerHost) | 444 if (url.host() == chrome::kChromeUIPowerHost) |
| 459 return &NewWebUI<chromeos::PowerUI>; | 445 return &NewWebUI<chromeos::PowerUI>; |
| 460 #endif // defined(OS_CHROMEOS) | 446 #endif // defined(OS_CHROMEOS) |
| 461 #if !defined(OS_ANDROID) && !defined(OS_IOS) | 447 #if defined(OS_ANDROID) || defined(OS_IOS) |
| 448 if (url.host() == chrome::kChromeUINetExportHost) |
| 449 return &NewWebUI<NetExportUI>; |
| 450 #else |
| 462 if (url.host() == chrome::kChromeUIChromeSigninHost) | 451 if (url.host() == chrome::kChromeUIChromeSigninHost) |
| 463 return &NewWebUI<InlineLoginUI>; | 452 return &NewWebUI<InlineLoginUI>; |
| 464 if (url.SchemeIs(content::kChromeDevToolsScheme)) | 453 if (url.SchemeIs(content::kChromeDevToolsScheme)) |
| 465 return &NewWebUI<DevToolsUI>; | 454 return &NewWebUI<DevToolsUI>; |
| 466 // chrome://inspect isn't supported on Android nor iOS. Page debugging is | 455 // chrome://inspect isn't supported on Android nor iOS. Page debugging is |
| 467 // handled by a remote devtools on the host machine, and other elements, i.e. | 456 // handled by a remote devtools on the host machine, and other elements, i.e. |
| 468 // extensions aren't supported. | 457 // extensions aren't supported. |
| 469 if (url.host() == chrome::kChromeUIInspectHost) | 458 if (url.host() == chrome::kChromeUIInspectHost) |
| 470 return &NewWebUI<InspectUI>; | 459 return &NewWebUI<InspectUI>; |
| 471 #endif | 460 #endif |
| 472 | |
| 473 /**************************************************************************** | |
| 474 * Other #defines and special logics. | |
| 475 ***************************************************************************/ | |
| 476 #if defined(ENABLE_CONFIGURATION_POLICY) | |
| 477 if (url.host() == chrome::kChromeUIPolicyHost) | |
| 478 return &NewWebUI<PolicyUI>; | |
| 479 | |
| 480 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) | |
| 481 if (url.host() == chrome::kChromeUIProfileSigninConfirmationHost) | |
| 482 return &NewWebUI<ProfileSigninConfirmationUI>; | |
| 483 #endif | |
| 484 | |
| 485 #endif // defined(ENABLE_CONFIGURATION_POLICY) | |
| 486 | |
| 487 #if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA) | |
| 488 if (url.host() == chrome::kChromeUITabModalConfirmDialogHost) { | |
| 489 return &NewWebUI<ConstrainedWebDialogUI>; | |
| 490 } | |
| 491 #endif | |
| 492 | |
| 493 #if defined(USE_AURA) | |
| 494 if (url.host() == chrome::kChromeUIGestureConfigHost) | |
| 495 return &NewWebUI<GestureConfigUI>; | |
| 496 #endif | |
| 497 | |
| 498 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) | 461 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) |
| 499 if (url.host() == chrome::kChromeUIUserManagerHost && | 462 if (url.host() == chrome::kChromeUIUserManagerHost && |
| 500 switches::IsNewAvatarMenu()) { | 463 switches::IsNewAvatarMenu()) { |
| 501 return &NewWebUI<UserManagerUI>; | 464 return &NewWebUI<UserManagerUI>; |
| 502 } | 465 } |
| 503 #endif | 466 #endif |
| 504 | 467 |
| 505 if (url.host() == chrome::kChromeUIChromeURLsHost || | 468 /**************************************************************************** |
| 506 url.host() == chrome::kChromeUICreditsHost || | 469 * Other #defines and special logics. |
| 507 url.host() == chrome::kChromeUIDNSHost || | 470 ***************************************************************************/ |
| 508 url.host() == chrome::kChromeUIMemoryHost || | 471 #if !defined(DISABLE_NACL) |
| 509 url.host() == chrome::kChromeUIMemoryRedirectHost || | 472 if (url.host() == chrome::kChromeUINaClHost) |
| 510 url.host() == chrome::kChromeUIStatsHost | 473 return &NewWebUI<NaClUI>; |
| 511 #if !defined(OS_ANDROID) | |
| 512 || url.host() == chrome::kChromeUITermsHost | |
| 513 #endif | 474 #endif |
| 514 #if defined(OS_LINUX) || defined(OS_OPENBSD) | 475 #if (defined(OS_LINUX) && defined(TOOLKIT_VIEWS)) || defined(USE_AURA) |
| 515 || url.host() == chrome::kChromeUILinuxProxyConfigHost | 476 if (url.host() == chrome::kChromeUITabModalConfirmDialogHost) { |
| 516 || url.host() == chrome::kChromeUISandboxHost | 477 return &NewWebUI<ConstrainedWebDialogUI>; |
| 478 } |
| 517 #endif | 479 #endif |
| 480 #if defined(USE_AURA) |
| 481 if (url.host() == chrome::kChromeUIGestureConfigHost) |
| 482 return &NewWebUI<GestureConfigUI>; |
| 483 #endif |
| 484 #if (defined(USE_NSS) || defined(USE_OPENSSL_CERTS)) && defined(USE_AURA) |
| 485 if (url.host() == chrome::kChromeUICertificateViewerHost) |
| 486 return &NewWebUI<CertificateViewerUI>; |
| 518 #if defined(OS_CHROMEOS) | 487 #if defined(OS_CHROMEOS) |
| 519 || url.host() == chrome::kChromeUIDiscardsHost | 488 if (url.host() == chrome::kChromeUICertificateViewerDialogHost) |
| 520 || url.host() == chrome::kChromeUIOSCreditsHost | 489 return &NewWebUI<CertificateViewerModalDialogUI>; |
| 521 #endif | 490 #endif |
| 522 ) { | 491 #endif // (defined(USE_NSS) || defined(USE_OPENSSL_CERTS)) && defined(USE_AURA) |
| 523 return &NewWebUI<AboutUI>; | |
| 524 } | |
| 525 | 492 |
| 493 #if defined(ENABLE_CONFIGURATION_POLICY) |
| 494 if (url.host() == chrome::kChromeUIPolicyHost) |
| 495 return &NewWebUI<PolicyUI>; |
| 496 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) |
| 497 if (url.host() == chrome::kChromeUIProfileSigninConfirmationHost) |
| 498 return &NewWebUI<ProfileSigninConfirmationUI>; |
| 499 #endif |
| 500 #endif // defined(ENABLE_CONFIGURATION_POLICY) |
| 501 |
| 502 #if defined(ENABLE_APP_LIST) |
| 503 if (url.host() == chrome::kChromeUIAppListStartPageHost) |
| 504 return &NewWebUI<app_list::StartPageUI>; |
| 505 #endif |
| 526 #if defined(ENABLE_EXTENSIONS) | 506 #if defined(ENABLE_EXTENSIONS) |
| 527 if (url.host() == chrome::kChromeUIExtensionsFrameHost) | 507 if (url.host() == chrome::kChromeUIExtensionsFrameHost) |
| 528 return &NewWebUI<extensions::ExtensionsUI>; | 508 return &NewWebUI<extensions::ExtensionsUI>; |
| 509 if (url.host() == chrome::kChromeUIVoiceSearchHost) |
| 510 return &NewWebUI<VoiceSearchUI>; |
| 529 #endif | 511 #endif |
| 530 #if defined(ENABLE_PRINT_PREVIEW) | 512 #if defined(ENABLE_PRINT_PREVIEW) |
| 531 if (url.host() == chrome::kChromeUIPrintHost && | 513 if (url.host() == chrome::kChromeUIPrintHost && |
| 532 !profile->GetPrefs()->GetBoolean(prefs::kPrintPreviewDisabled)) { | 514 !profile->GetPrefs()->GetBoolean(prefs::kPrintPreviewDisabled)) { |
| 533 return &NewWebUI<PrintPreviewUI>; | 515 return &NewWebUI<PrintPreviewUI>; |
| 534 } | 516 } |
| 535 #endif | 517 #endif |
| 518 #if defined(ENABLE_SERVICE_DISCOVERY) |
| 519 if (url.host() == chrome::kChromeUIDevicesHost) { |
| 520 return &NewWebUI<LocalDiscoveryUI>; |
| 521 } |
| 522 #endif |
| 523 #if defined(ENABLE_WEBRTC) |
| 524 if (url.host() == chrome::kChromeUIWebRtcLogsHost) |
| 525 return &NewWebUI<WebRtcLogsUI>; |
| 526 #endif |
| 527 |
| 528 if (IsAboutUI(url)) |
| 529 return &NewWebUI<AboutUI>; |
| 536 | 530 |
| 537 if (IsEnableDomDistillerSet() && | 531 if (IsEnableDomDistillerSet() && |
| 538 url.host() == dom_distiller::kChromeUIDomDistillerHost) { | 532 url.host() == dom_distiller::kChromeUIDomDistillerHost) { |
| 539 return &NewWebUI<dom_distiller::DomDistillerUi>; | 533 return &NewWebUI<dom_distiller::DomDistillerUi>; |
| 540 } | 534 } |
| 541 | 535 |
| 542 return NULL; | 536 return NULL; |
| 543 } | 537 } |
| 544 | 538 |
| 545 void RunFaviconCallbackAsync( | 539 void RunFaviconCallbackAsync( |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 723 #endif | 717 #endif |
| 724 | 718 |
| 725 // Android doesn't use the plugins pages. | 719 // Android doesn't use the plugins pages. |
| 726 if (page_url.host() == chrome::kChromeUIPluginsHost) | 720 if (page_url.host() == chrome::kChromeUIPluginsHost) |
| 727 return PluginsUI::GetFaviconResourceBytes(scale_factor); | 721 return PluginsUI::GetFaviconResourceBytes(scale_factor); |
| 728 | 722 |
| 729 #endif | 723 #endif |
| 730 | 724 |
| 731 return NULL; | 725 return NULL; |
| 732 } | 726 } |
| OLD | NEW |