| 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/chrome_content_browser_client.h" | 5 #include "chrome/browser/chrome_content_browser_client.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <set> | 8 #include <set> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 53 #include "chrome/browser/memory/chrome_memory_coordinator_delegate.h" | 53 #include "chrome/browser/memory/chrome_memory_coordinator_delegate.h" |
| 54 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h" | 54 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h" |
| 55 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" | 55 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" |
| 56 #include "chrome/browser/net_benchmarking.h" | 56 #include "chrome/browser/net_benchmarking.h" |
| 57 #include "chrome/browser/notifications/platform_notification_service_impl.h" | 57 #include "chrome/browser/notifications/platform_notification_service_impl.h" |
| 58 #include "chrome/browser/page_load_metrics/experiments/delay_navigation_throttle
.h" | 58 #include "chrome/browser/page_load_metrics/experiments/delay_navigation_throttle
.h" |
| 59 #include "chrome/browser/page_load_metrics/metrics_navigation_throttle.h" | 59 #include "chrome/browser/page_load_metrics/metrics_navigation_throttle.h" |
| 60 #include "chrome/browser/password_manager/chrome_password_manager_client.h" | 60 #include "chrome/browser/password_manager/chrome_password_manager_client.h" |
| 61 #include "chrome/browser/permissions/permission_context_base.h" | 61 #include "chrome/browser/permissions/permission_context_base.h" |
| 62 #include "chrome/browser/platform_util.h" | 62 #include "chrome/browser/platform_util.h" |
| 63 #include "chrome/browser/prefs/active_profile_pref_service.h" | |
| 64 #include "chrome/browser/prerender/prerender_final_status.h" | 63 #include "chrome/browser/prerender/prerender_final_status.h" |
| 65 #include "chrome/browser/prerender/prerender_manager.h" | 64 #include "chrome/browser/prerender/prerender_manager.h" |
| 66 #include "chrome/browser/prerender/prerender_manager_factory.h" | 65 #include "chrome/browser/prerender/prerender_manager_factory.h" |
| 67 #include "chrome/browser/prerender/prerender_message_filter.h" | 66 #include "chrome/browser/prerender/prerender_message_filter.h" |
| 68 #include "chrome/browser/printing/printing_message_filter.h" | 67 #include "chrome/browser/printing/printing_message_filter.h" |
| 69 #include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h" | 68 #include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h" |
| 70 #include "chrome/browser/profiles/profile.h" | 69 #include "chrome/browser/profiles/profile.h" |
| 71 #include "chrome/browser/profiles/profile_io_data.h" | 70 #include "chrome/browser/profiles/profile_io_data.h" |
| 72 #include "chrome/browser/renderer_host/chrome_navigation_ui_data.h" | 71 #include "chrome/browser/renderer_host/chrome_navigation_ui_data.h" |
| 73 #include "chrome/browser/renderer_host/chrome_render_message_filter.h" | 72 #include "chrome/browser/renderer_host/chrome_render_message_filter.h" |
| (...skipping 14 matching lines...) Expand all Loading... |
| 88 #include "chrome/browser/ssl/ssl_cert_reporter.h" | 87 #include "chrome/browser/ssl/ssl_cert_reporter.h" |
| 89 #include "chrome/browser/ssl/ssl_client_certificate_selector.h" | 88 #include "chrome/browser/ssl/ssl_client_certificate_selector.h" |
| 90 #include "chrome/browser/ssl/ssl_error_handler.h" | 89 #include "chrome/browser/ssl/ssl_error_handler.h" |
| 91 #include "chrome/browser/subresource_filter/chrome_subresource_filter_client.h" | 90 #include "chrome/browser/subresource_filter/chrome_subresource_filter_client.h" |
| 92 #include "chrome/browser/sync_file_system/local/sync_file_system_backend.h" | 91 #include "chrome/browser/sync_file_system/local/sync_file_system_backend.h" |
| 93 #include "chrome/browser/tab_contents/tab_util.h" | 92 #include "chrome/browser/tab_contents/tab_util.h" |
| 94 #include "chrome/browser/tracing/chrome_tracing_delegate.h" | 93 #include "chrome/browser/tracing/chrome_tracing_delegate.h" |
| 95 #include "chrome/browser/translate/chrome_translate_client.h" | 94 #include "chrome/browser/translate/chrome_translate_client.h" |
| 96 #include "chrome/browser/ui/blocked_content/blocked_window_params.h" | 95 #include "chrome/browser/ui/blocked_content/blocked_window_params.h" |
| 97 #include "chrome/browser/ui/blocked_content/popup_blocker_tab_helper.h" | 96 #include "chrome/browser/ui/blocked_content/popup_blocker_tab_helper.h" |
| 98 #include "chrome/browser/ui/browser_finder.h" | |
| 99 #include "chrome/browser/ui/browser_navigator.h" | 97 #include "chrome/browser/ui/browser_navigator.h" |
| 100 #include "chrome/browser/ui/browser_navigator_params.h" | 98 #include "chrome/browser/ui/browser_navigator_params.h" |
| 101 #include "chrome/browser/ui/browser_window.h" | |
| 102 #include "chrome/browser/ui/chrome_select_file_policy.h" | 99 #include "chrome/browser/ui/chrome_select_file_policy.h" |
| 103 #include "chrome/browser/ui/sync/sync_promo_ui.h" | 100 #include "chrome/browser/ui/sync/sync_promo_ui.h" |
| 104 #include "chrome/browser/ui/tab_contents/chrome_web_contents_view_delegate.h" | 101 #include "chrome/browser/ui/tab_contents/chrome_web_contents_view_delegate.h" |
| 105 #include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h" | 102 #include "chrome/browser/ui/webui/chrome_web_ui_controller_factory.h" |
| 106 #include "chrome/browser/ui/webui/log_web_ui_url.h" | 103 #include "chrome/browser/ui/webui/log_web_ui_url.h" |
| 107 #include "chrome/browser/usb/usb_tab_helper.h" | 104 #include "chrome/browser/usb/usb_tab_helper.h" |
| 108 #include "chrome/common/channel_info.h" | 105 #include "chrome/common/channel_info.h" |
| 109 #include "chrome/common/chrome_constants.h" | 106 #include "chrome/common/chrome_constants.h" |
| 110 #include "chrome/common/chrome_features.h" | 107 #include "chrome/common/chrome_features.h" |
| 111 #include "chrome/common/chrome_paths.h" | 108 #include "chrome/common/chrome_paths.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 #include "media/media_features.h" | 199 #include "media/media_features.h" |
| 203 #include "media/mojo/features.h" | 200 #include "media/mojo/features.h" |
| 204 #include "mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h" | 201 #include "mojo/public/cpp/bindings/scoped_interface_endpoint_handle.h" |
| 205 #include "net/base/mime_util.h" | 202 #include "net/base/mime_util.h" |
| 206 #include "net/cookies/canonical_cookie.h" | 203 #include "net/cookies/canonical_cookie.h" |
| 207 #include "net/cookies/cookie_options.h" | 204 #include "net/cookies/cookie_options.h" |
| 208 #include "net/ssl/ssl_cert_request_info.h" | 205 #include "net/ssl/ssl_cert_request_info.h" |
| 209 #include "ppapi/features/features.h" | 206 #include "ppapi/features/features.h" |
| 210 #include "ppapi/host/ppapi_host.h" | 207 #include "ppapi/host/ppapi_host.h" |
| 211 #include "printing/features/features.h" | 208 #include "printing/features/features.h" |
| 212 #include "services/preferences/public/interfaces/preferences.mojom.h" | |
| 213 #include "services/service_manager/public/cpp/binder_registry.h" | |
| 214 #include "services/service_manager/public/cpp/interface_provider.h" | |
| 215 #include "services/service_manager/public/cpp/service.h" | |
| 216 #include "storage/browser/fileapi/external_mount_points.h" | 209 #include "storage/browser/fileapi/external_mount_points.h" |
| 217 #include "third_party/WebKit/public/platform/modules/installedapp/installed_app_
provider.mojom.h" | 210 #include "third_party/WebKit/public/platform/modules/installedapp/installed_app_
provider.mojom.h" |
| 218 #include "third_party/WebKit/public/platform/modules/webshare/webshare.mojom.h" | 211 #include "third_party/WebKit/public/platform/modules/webshare/webshare.mojom.h" |
| 219 #include "ui/base/l10n/l10n_util.h" | 212 #include "ui/base/l10n/l10n_util.h" |
| 220 #include "ui/base/resource/resource_bundle.h" | 213 #include "ui/base/resource/resource_bundle.h" |
| 221 #include "ui/resources/grit/ui_resources.h" | 214 #include "ui/resources/grit/ui_resources.h" |
| 222 #include "url/gurl.h" | 215 #include "url/gurl.h" |
| 223 #include "url/origin.h" | 216 #include "url/origin.h" |
| 224 | 217 |
| 225 #if defined(OS_WIN) | 218 #if defined(OS_WIN) |
| 226 #include "base/strings/string_tokenizer.h" | 219 #include "base/strings/string_tokenizer.h" |
| 227 #include "chrome/browser/chrome_browser_main_win.h" | 220 #include "chrome/browser/chrome_browser_main_win.h" |
| 228 #include "chrome/browser/conflicts/module_database_win.h" | 221 #include "chrome/browser/conflicts/module_database_win.h" |
| 229 #include "chrome/browser/conflicts/module_event_sink_impl_win.h" | 222 #include "chrome/browser/conflicts/module_event_sink_impl_win.h" |
| 230 #include "sandbox/win/src/sandbox_policy.h" | 223 #include "sandbox/win/src/sandbox_policy.h" |
| 231 #elif defined(OS_MACOSX) | 224 #elif defined(OS_MACOSX) |
| 232 #include "chrome/browser/chrome_browser_main_mac.h" | 225 #include "chrome/browser/chrome_browser_main_mac.h" |
| 233 #elif defined(OS_CHROMEOS) | 226 #elif defined(OS_CHROMEOS) |
| 234 #include "ash/public/interfaces/constants.mojom.h" | |
| 235 #include "chrome/browser/chromeos/arc/arc_util.h" | 227 #include "chrome/browser/chromeos/arc/arc_util.h" |
| 236 #include "chrome/browser/chromeos/arc/fileapi/arc_content_file_system_backend_de
legate.h" | 228 #include "chrome/browser/chromeos/arc/fileapi/arc_content_file_system_backend_de
legate.h" |
| 237 #include "chrome/browser/chromeos/arc/fileapi/arc_documents_provider_backend_del
egate.h" | 229 #include "chrome/browser/chromeos/arc/fileapi/arc_documents_provider_backend_del
egate.h" |
| 238 #include "chrome/browser/chromeos/arc/intent_helper/arc_navigation_throttle.h" | 230 #include "chrome/browser/chromeos/arc/intent_helper/arc_navigation_throttle.h" |
| 239 #include "chrome/browser/chromeos/attestation/platform_verification_impl.h" | 231 #include "chrome/browser/chromeos/attestation/platform_verification_impl.h" |
| 240 #include "chrome/browser/chromeos/chrome_browser_main_chromeos.h" | 232 #include "chrome/browser/chromeos/chrome_browser_main_chromeos.h" |
| 241 #include "chrome/browser/chromeos/chrome_service_name.h" | 233 #include "chrome/browser/chromeos/chrome_service_name.h" |
| 242 #include "chrome/browser/chromeos/drive/fileapi/file_system_backend_delegate.h" | 234 #include "chrome/browser/chromeos/drive/fileapi/file_system_backend_delegate.h" |
| 243 #include "chrome/browser/chromeos/file_manager/app_id.h" | 235 #include "chrome/browser/chromeos/file_manager/app_id.h" |
| 244 #include "chrome/browser/chromeos/file_system_provider/fileapi/backend_delegate.
h" | 236 #include "chrome/browser/chromeos/file_system_provider/fileapi/backend_delegate.
h" |
| 245 #include "chrome/browser/chromeos/fileapi/file_system_backend.h" | 237 #include "chrome/browser/chromeos/fileapi/file_system_backend.h" |
| 246 #include "chrome/browser/chromeos/fileapi/mtp_file_system_backend_delegate.h" | 238 #include "chrome/browser/chromeos/fileapi/mtp_file_system_backend_delegate.h" |
| 247 #include "chrome/browser/chromeos/login/signin/merge_session_navigation_throttle
.h" | 239 #include "chrome/browser/chromeos/login/signin/merge_session_navigation_throttle
.h" |
| 248 #include "chrome/browser/chromeos/login/signin/merge_session_throttling_utils.h" | 240 #include "chrome/browser/chromeos/login/signin/merge_session_throttling_utils.h" |
| 249 #include "chrome/browser/chromeos/login/startup_utils.h" | 241 #include "chrome/browser/chromeos/login/startup_utils.h" |
| 250 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" | 242 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" |
| 251 #include "chrome/browser/chromeos/system/input_device_settings.h" | 243 #include "chrome/browser/chromeos/system/input_device_settings.h" |
| 252 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" | 244 #include "chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h
" |
| 253 #include "chrome/browser/profiles/profile_manager.h" | |
| 254 #include "chrome/browser/ui/ash/ash_util.h" | |
| 255 #include "chrome/browser/ui/browser_commands.h" | |
| 256 #include "chrome/browser/ui/browser_dialogs.h" | 245 #include "chrome/browser/ui/browser_dialogs.h" |
| 257 #include "chrome/browser/ui/browser_finder.h" | 246 #include "chrome/browser/ui/browser_finder.h" |
| 258 #include "chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h" | 247 #include "chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h" |
| 259 #include "chromeos/chromeos_constants.h" | 248 #include "chromeos/chromeos_constants.h" |
| 260 #include "chromeos/chromeos_switches.h" | 249 #include "chromeos/chromeos_switches.h" |
| 261 #include "components/user_manager/user_manager.h" | 250 #include "components/user_manager/user_manager.h" |
| 262 #include "mash/public/interfaces/launchable.mojom.h" | |
| 263 #include "services/service_manager/public/interfaces/interface_provider_spec.moj
om.h" | 251 #include "services/service_manager/public/interfaces/interface_provider_spec.moj
om.h" |
| 264 #elif defined(OS_LINUX) | 252 #elif defined(OS_LINUX) |
| 265 #include "chrome/browser/chrome_browser_main_linux.h" | 253 #include "chrome/browser/chrome_browser_main_linux.h" |
| 266 #elif defined(OS_ANDROID) | 254 #elif defined(OS_ANDROID) |
| 267 #include "chrome/browser/android/app_hooks.h" | 255 #include "chrome/browser/android/app_hooks.h" |
| 268 #include "chrome/browser/android/chrome_context_util.h" | 256 #include "chrome/browser/android/chrome_context_util.h" |
| 269 #include "chrome/browser/android/devtools_manager_delegate_android.h" | 257 #include "chrome/browser/android/devtools_manager_delegate_android.h" |
| 270 #include "chrome/browser/android/ntp/new_tab_page_url_handler.h" | 258 #include "chrome/browser/android/ntp/new_tab_page_url_handler.h" |
| 271 #include "chrome/browser/android/service_tab_launcher.h" | 259 #include "chrome/browser/android/service_tab_launcher.h" |
| 272 #include "chrome/browser/android/tab_android.h" | 260 #include "chrome/browser/android/tab_android.h" |
| 273 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" | 261 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" |
| 274 #include "chrome/browser/chrome_browser_main_android.h" | 262 #include "chrome/browser/chrome_browser_main_android.h" |
| 275 #include "chrome/common/descriptors_android.h" | 263 #include "chrome/common/descriptors_android.h" |
| 276 #include "components/crash/content/browser/crash_dump_manager_android.h" | 264 #include "components/crash/content/browser/crash_dump_manager_android.h" |
| 277 #include "components/navigation_interception/intercept_navigation_delegate.h" | 265 #include "components/navigation_interception/intercept_navigation_delegate.h" |
| 278 #include "content/public/browser/android/java_interfaces.h" | 266 #include "content/public/browser/android/java_interfaces.h" |
| 267 #include "services/service_manager/public/cpp/interface_provider.h" |
| 279 #include "third_party/WebKit/public/platform/modules/payments/payment_request.mo
jom.h" | 268 #include "third_party/WebKit/public/platform/modules/payments/payment_request.mo
jom.h" |
| 280 #include "ui/base/resource/resource_bundle_android.h" | 269 #include "ui/base/resource/resource_bundle_android.h" |
| 281 #include "ui/base/ui_base_paths.h" | 270 #include "ui/base/ui_base_paths.h" |
| 282 #elif defined(OS_POSIX) | 271 #elif defined(OS_POSIX) |
| 283 #include "chrome/browser/chrome_browser_main_posix.h" | 272 #include "chrome/browser/chrome_browser_main_posix.h" |
| 284 #endif | 273 #endif |
| 285 | 274 |
| 286 #if defined(OS_CHROMEOS) && defined(USE_OZONE) | |
| 287 #include "services/ui/public/cpp/input_devices/input_device_controller.h" | |
| 288 #endif | |
| 289 | |
| 290 #if !defined(OS_ANDROID) | 275 #if !defined(OS_ANDROID) |
| 291 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" | 276 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" |
| 292 #include "chrome/browser/payments/payment_request_factory.h" | 277 #include "chrome/browser/payments/payment_request_factory.h" |
| 293 #endif | 278 #endif |
| 294 | 279 |
| 295 #if defined(OS_LINUX) || defined(OS_WIN) | 280 #if defined(OS_LINUX) || defined(OS_WIN) |
| 296 #include "chrome/browser/webshare/share_service_impl.h" | 281 #include "chrome/browser/webshare/share_service_impl.h" |
| 297 #endif | 282 #endif |
| 298 | 283 |
| 299 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 284 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 504 // An extension or app tried to load a resource of a different platform app in | 489 // An extension or app tried to load a resource of a different platform app in |
| 505 // a tab. | 490 // a tab. |
| 506 APP_LOADED_IN_TAB_SOURCE_OTHER_EXTENSION, | 491 APP_LOADED_IN_TAB_SOURCE_OTHER_EXTENSION, |
| 507 | 492 |
| 508 // A non-app and non-extension page tried to load a platform app in a tab. | 493 // A non-app and non-extension page tried to load a platform app in a tab. |
| 509 APP_LOADED_IN_TAB_SOURCE_OTHER, | 494 APP_LOADED_IN_TAB_SOURCE_OTHER, |
| 510 | 495 |
| 511 APP_LOADED_IN_TAB_SOURCE_MAX | 496 APP_LOADED_IN_TAB_SOURCE_MAX |
| 512 }; | 497 }; |
| 513 | 498 |
| 514 #if defined(OS_CHROMEOS) | |
| 515 | |
| 516 // Packaged service implementation used to expose miscellaneous application | |
| 517 // control features. This is a singleton service which runs on the main thread | |
| 518 // and never stops. | |
| 519 class ChromeServiceChromeOS : public service_manager::Service, | |
| 520 public mash::mojom::Launchable { | |
| 521 public: | |
| 522 ChromeServiceChromeOS() { | |
| 523 #if defined(USE_OZONE) | |
| 524 input_device_controller_.AddInterface(&interfaces_); | |
| 525 #endif | |
| 526 interfaces_.AddInterface<mash::mojom::Launchable>( | |
| 527 base::Bind(&ChromeServiceChromeOS::Create, base::Unretained(this))); | |
| 528 } | |
| 529 ~ChromeServiceChromeOS() override {} | |
| 530 | |
| 531 static std::unique_ptr<service_manager::Service> CreateService() { | |
| 532 return base::MakeUnique<ChromeServiceChromeOS>(); | |
| 533 } | |
| 534 | |
| 535 private: | |
| 536 void CreateNewWindowImpl(bool is_incognito) { | |
| 537 Profile* profile = ProfileManager::GetActiveUserProfile(); | |
| 538 chrome::NewEmptyWindow(is_incognito ? profile->GetOffTheRecordProfile() | |
| 539 : profile); | |
| 540 } | |
| 541 | |
| 542 // service_manager::Service: | |
| 543 void OnBindInterface(const service_manager::BindSourceInfo& remote_info, | |
| 544 const std::string& name, | |
| 545 mojo::ScopedMessagePipeHandle handle) override { | |
| 546 interfaces_.BindInterface(remote_info, name, std::move(handle)); | |
| 547 } | |
| 548 | |
| 549 // mash::mojom::Launchable: | |
| 550 void Launch(uint32_t what, mash::mojom::LaunchMode how) override { | |
| 551 bool is_incognito; | |
| 552 switch (what) { | |
| 553 case mash::mojom::kWindow: | |
| 554 is_incognito = false; | |
| 555 break; | |
| 556 case mash::mojom::kIncognitoWindow: | |
| 557 is_incognito = true; | |
| 558 break; | |
| 559 default: | |
| 560 NOTREACHED(); | |
| 561 } | |
| 562 | |
| 563 bool reuse = how != mash::mojom::LaunchMode::MAKE_NEW; | |
| 564 if (reuse) { | |
| 565 Profile* profile = ProfileManager::GetActiveUserProfile(); | |
| 566 Browser* browser = chrome::FindTabbedBrowser( | |
| 567 is_incognito ? profile->GetOffTheRecordProfile() : profile, false); | |
| 568 if (browser) { | |
| 569 browser->window()->Show(); | |
| 570 return; | |
| 571 } | |
| 572 } | |
| 573 | |
| 574 CreateNewWindowImpl(is_incognito); | |
| 575 } | |
| 576 | |
| 577 void Create(const service_manager::BindSourceInfo& source_info, | |
| 578 mash::mojom::LaunchableRequest request) { | |
| 579 bindings_.AddBinding(this, std::move(request)); | |
| 580 } | |
| 581 | |
| 582 service_manager::BinderRegistry interfaces_; | |
| 583 mojo::BindingSet<mash::mojom::Launchable> bindings_; | |
| 584 #if defined(USE_OZONE) | |
| 585 ui::InputDeviceController input_device_controller_; | |
| 586 #endif | |
| 587 | |
| 588 DISALLOW_COPY_AND_ASSIGN(ChromeServiceChromeOS); | |
| 589 }; | |
| 590 | |
| 591 #endif // defined(OS_CHROMEOS) | |
| 592 | |
| 593 // Returns a copy of the given url with its host set to given host and path set | 499 // Returns a copy of the given url with its host set to given host and path set |
| 594 // to given path. Other parts of the url will be the same. | 500 // to given path. Other parts of the url will be the same. |
| 595 GURL ReplaceURLHostAndPath(const GURL& url, | 501 GURL ReplaceURLHostAndPath(const GURL& url, |
| 596 const std::string& host, | 502 const std::string& host, |
| 597 const std::string& path) { | 503 const std::string& path) { |
| 598 url::Replacements<char> replacements; | 504 url::Replacements<char> replacements; |
| 599 replacements.SetHost(host.c_str(), url::Component(0, host.length())); | 505 replacements.SetHost(host.c_str(), url::Component(0, host.length())); |
| 600 replacements.SetPath(path.c_str(), url::Component(0, path.length())); | 506 replacements.SetPath(path.c_str(), url::Component(0, path.length())); |
| 601 return url.ReplaceComponents(replacements); | 507 return url.ReplaceComponents(replacements); |
| 602 } | 508 } |
| (...skipping 2446 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3049 } | 2955 } |
| 3050 } | 2956 } |
| 3051 | 2957 |
| 3052 void ChromeContentBrowserClient::RegisterInProcessServices( | 2958 void ChromeContentBrowserClient::RegisterInProcessServices( |
| 3053 StaticServiceMap* services) { | 2959 StaticServiceMap* services) { |
| 3054 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) | 2960 #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) |
| 3055 service_manager::EmbeddedServiceInfo info; | 2961 service_manager::EmbeddedServiceInfo info; |
| 3056 info.factory = base::Bind(&media::CreateMediaService); | 2962 info.factory = base::Bind(&media::CreateMediaService); |
| 3057 services->insert(std::make_pair(media::mojom::kMediaServiceName, info)); | 2963 services->insert(std::make_pair(media::mojom::kMediaServiceName, info)); |
| 3058 #endif | 2964 #endif |
| 3059 #if defined(OS_CHROMEOS) | 2965 g_browser_process->platform_part()->RegisterInProcessServices(services); |
| 3060 { | |
| 3061 service_manager::EmbeddedServiceInfo info; | |
| 3062 info.factory = base::Bind(&ChromeServiceChromeOS::CreateService); | |
| 3063 info.task_runner = base::ThreadTaskRunnerHandle::Get(); | |
| 3064 services->insert(std::make_pair(chromeos::kChromeServiceName, info)); | |
| 3065 } | |
| 3066 | |
| 3067 if (features::PrefServiceEnabled()) { | |
| 3068 service_manager::EmbeddedServiceInfo info; | |
| 3069 info.factory = base::Bind([] { | |
| 3070 return std::unique_ptr<service_manager::Service>( | |
| 3071 base::MakeUnique<ActiveProfilePrefService>()); | |
| 3072 }); | |
| 3073 info.task_runner = base::ThreadTaskRunnerHandle::Get(); | |
| 3074 services->insert(std::make_pair(prefs::mojom::kForwarderServiceName, info)); | |
| 3075 } | |
| 3076 | |
| 3077 if (!ash_util::IsRunningInMash()) { | |
| 3078 service_manager::EmbeddedServiceInfo info; | |
| 3079 info.factory = base::Bind(&ash_util::CreateEmbeddedAshService, | |
| 3080 base::ThreadTaskRunnerHandle::Get()); | |
| 3081 info.task_runner = base::ThreadTaskRunnerHandle::Get(); | |
| 3082 services->insert(std::make_pair(ash::mojom::kServiceName, info)); | |
| 3083 } | |
| 3084 #endif // OS_CHROMEOS | |
| 3085 } | 2966 } |
| 3086 | 2967 |
| 3087 void ChromeContentBrowserClient::RegisterOutOfProcessServices( | 2968 void ChromeContentBrowserClient::RegisterOutOfProcessServices( |
| 3088 OutOfProcessServiceMap* services) { | 2969 OutOfProcessServiceMap* services) { |
| 3089 #if BUILDFLAG(ENABLE_PRINTING) | 2970 #if BUILDFLAG(ENABLE_PRINTING) |
| 3090 (*services)[printing::mojom::kServiceName] = { | 2971 (*services)[printing::mojom::kServiceName] = { |
| 3091 base::ASCIIToUTF16("PDF Compositor Service"), | 2972 base::ASCIIToUTF16("PDF Compositor Service"), |
| 3092 content::SANDBOX_TYPE_UTILITY}; | 2973 content::SANDBOX_TYPE_UTILITY}; |
| 3093 #endif | 2974 #endif |
| 3094 } | 2975 } |
| (...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3522 // displayed URL when rewriting chrome://help to chrome://settings/help. | 3403 // displayed URL when rewriting chrome://help to chrome://settings/help. |
| 3523 return url->SchemeIs(content::kChromeUIScheme) && | 3404 return url->SchemeIs(content::kChromeUIScheme) && |
| 3524 url->host() == chrome::kChromeUISettingsHost; | 3405 url->host() == chrome::kChromeUISettingsHost; |
| 3525 } | 3406 } |
| 3526 | 3407 |
| 3527 // static | 3408 // static |
| 3528 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting( | 3409 void ChromeContentBrowserClient::SetDefaultQuotaSettingsForTesting( |
| 3529 const storage::QuotaSettings* settings) { | 3410 const storage::QuotaSettings* settings) { |
| 3530 g_default_quota_settings = settings; | 3411 g_default_quota_settings = settings; |
| 3531 } | 3412 } |
| OLD | NEW |