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

Side by Side Diff: chrome/browser/chrome_content_browser_client.cc

Issue 434613003: Remove all the browser side extensions code from Android. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/browser_process_impl.cc ('k') | chrome/browser/extensions/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/chrome_content_browser_client.h" 5 #include "chrome/browser/chrome_content_browser_client.h"
6 6
7 #include <set> 7 #include <set>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/bind.h" 11 #include "base/bind.h"
12 #include "base/command_line.h" 12 #include "base/command_line.h"
13 #include "base/lazy_instance.h" 13 #include "base/lazy_instance.h"
14 #include "base/path_service.h" 14 #include "base/path_service.h"
15 #include "base/prefs/pref_service.h" 15 #include "base/prefs/pref_service.h"
16 #include "base/prefs/scoped_user_pref_update.h" 16 #include "base/prefs/scoped_user_pref_update.h"
17 #include "base/strings/string_number_conversions.h" 17 #include "base/strings/string_number_conversions.h"
18 #include "base/strings/utf_string_conversions.h" 18 #include "base/strings/utf_string_conversions.h"
19 #include "base/threading/sequenced_worker_pool.h" 19 #include "base/threading/sequenced_worker_pool.h"
20 #include "chrome/browser/browser_about_handler.h" 20 #include "chrome/browser/browser_about_handler.h"
21 #include "chrome/browser/browser_process.h" 21 #include "chrome/browser/browser_process.h"
22 #include "chrome/browser/browser_shutdown.h" 22 #include "chrome/browser/browser_shutdown.h"
23 #include "chrome/browser/browsing_data/browsing_data_helper.h" 23 #include "chrome/browser/browsing_data/browsing_data_helper.h"
24 #include "chrome/browser/browsing_data/browsing_data_remover.h" 24 #include "chrome/browser/browsing_data/browsing_data_remover.h"
25 #include "chrome/browser/character_encoding.h" 25 #include "chrome/browser/character_encoding.h"
26 #include "chrome/browser/chrome_content_browser_client_parts.h"
26 #include "chrome/browser/chrome_net_benchmarking_message_filter.h" 27 #include "chrome/browser/chrome_net_benchmarking_message_filter.h"
27 #include "chrome/browser/chrome_quota_permission_context.h" 28 #include "chrome/browser/chrome_quota_permission_context.h"
28 #include "chrome/browser/content_settings/content_settings_utils.h" 29 #include "chrome/browser/content_settings/content_settings_utils.h"
29 #include "chrome/browser/content_settings/cookie_settings.h" 30 #include "chrome/browser/content_settings/cookie_settings.h"
30 #include "chrome/browser/content_settings/host_content_settings_map.h" 31 #include "chrome/browser/content_settings/host_content_settings_map.h"
31 #include "chrome/browser/content_settings/permission_request_id.h" 32 #include "chrome/browser/content_settings/permission_request_id.h"
32 #include "chrome/browser/content_settings/tab_specific_content_settings.h" 33 #include "chrome/browser/content_settings/tab_specific_content_settings.h"
33 #include "chrome/browser/defaults.h" 34 #include "chrome/browser/defaults.h"
34 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" 35 #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h"
35 #include "chrome/browser/download/download_prefs.h" 36 #include "chrome/browser/download/download_prefs.h"
36 #include "chrome/browser/extensions/chrome_content_browser_client_extensions_par t.h"
37 #include "chrome/browser/font_family_cache.h" 37 #include "chrome/browser/font_family_cache.h"
38 #include "chrome/browser/geolocation/chrome_access_token_store.h" 38 #include "chrome/browser/geolocation/chrome_access_token_store.h"
39 #include "chrome/browser/geolocation/geolocation_permission_context.h" 39 #include "chrome/browser/geolocation/geolocation_permission_context.h"
40 #include "chrome/browser/geolocation/geolocation_permission_context_factory.h" 40 #include "chrome/browser/geolocation/geolocation_permission_context_factory.h"
41 #include "chrome/browser/media/cast_transport_host_filter.h" 41 #include "chrome/browser/media/cast_transport_host_filter.h"
42 #include "chrome/browser/media/media_capture_devices_dispatcher.h" 42 #include "chrome/browser/media/media_capture_devices_dispatcher.h"
43 #include "chrome/browser/media/midi_permission_context.h" 43 #include "chrome/browser/media/midi_permission_context.h"
44 #include "chrome/browser/media/midi_permission_context_factory.h" 44 #include "chrome/browser/media/midi_permission_context_factory.h"
45 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h" 45 #include "chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h"
46 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" 46 #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h"
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 210
211 #if !defined(DISABLE_NACL) 211 #if !defined(DISABLE_NACL)
212 #include "components/nacl/browser/nacl_browser.h" 212 #include "components/nacl/browser/nacl_browser.h"
213 #include "components/nacl/browser/nacl_host_message_filter.h" 213 #include "components/nacl/browser/nacl_host_message_filter.h"
214 #include "components/nacl/browser/nacl_process_host.h" 214 #include "components/nacl/browser/nacl_process_host.h"
215 #include "components/nacl/common/nacl_process_type.h" 215 #include "components/nacl/common/nacl_process_type.h"
216 #include "components/nacl/common/nacl_switches.h" 216 #include "components/nacl/common/nacl_switches.h"
217 #endif 217 #endif
218 218
219 #if defined(ENABLE_EXTENSIONS) 219 #if defined(ENABLE_EXTENSIONS)
220 #include "chrome/browser/extensions/chrome_content_browser_client_extensions_par t.h"
220 #include "chrome/browser/extensions/extension_service.h" 221 #include "chrome/browser/extensions/extension_service.h"
221 #include "chrome/browser/extensions/extension_util.h" 222 #include "chrome/browser/extensions/extension_util.h"
222 #include "chrome/browser/extensions/suggest_permission_util.h" 223 #include "chrome/browser/extensions/suggest_permission_util.h"
223 #include "chrome/browser/guest_view/guest_view_base.h" 224 #include "chrome/browser/guest_view/guest_view_base.h"
224 #include "chrome/browser/guest_view/guest_view_constants.h" 225 #include "chrome/browser/guest_view/guest_view_constants.h"
225 #include "chrome/browser/guest_view/guest_view_manager.h" 226 #include "chrome/browser/guest_view/guest_view_manager.h"
226 #include "chrome/browser/guest_view/web_view/web_view_guest.h" 227 #include "chrome/browser/guest_view/web_view/web_view_guest.h"
227 #include "chrome/browser/guest_view/web_view/web_view_permission_helper.h" 228 #include "chrome/browser/guest_view/web_view/web_view_permission_helper.h"
228 #include "chrome/browser/guest_view/web_view/web_view_renderer_state.h" 229 #include "chrome/browser/guest_view/web_view/web_view_renderer_state.h"
229 #include "extensions/common/manifest_handlers/background_info.h" 230 #include "extensions/common/manifest_handlers/background_info.h"
(...skipping 18 matching lines...) Expand all
248 using content::BrowserURLHandler; 249 using content::BrowserURLHandler;
249 using content::ChildProcessSecurityPolicy; 250 using content::ChildProcessSecurityPolicy;
250 using content::QuotaPermissionContext; 251 using content::QuotaPermissionContext;
251 using content::RenderFrameHost; 252 using content::RenderFrameHost;
252 using content::RenderViewHost; 253 using content::RenderViewHost;
253 using content::ResourceType; 254 using content::ResourceType;
254 using content::SiteInstance; 255 using content::SiteInstance;
255 using content::WebContents; 256 using content::WebContents;
256 using content::WebPreferences; 257 using content::WebPreferences;
257 using extensions::APIPermission; 258 using extensions::APIPermission;
258 using extensions::ChromeContentBrowserClientExtensionsPart;
259 using extensions::Extension; 259 using extensions::Extension;
260 using extensions::InfoMap; 260 using extensions::InfoMap;
261 using extensions::Manifest; 261 using extensions::Manifest;
262 using message_center::NotifierId; 262 using message_center::NotifierId;
263 263
264 #if defined(OS_POSIX) 264 #if defined(OS_POSIX)
265 using content::FileDescriptorInfo; 265 using content::FileDescriptorInfo;
266 #endif 266 #endif
267 267
268 #if defined(ENABLE_EXTENSIONS)
269 using extensions::ChromeContentBrowserClientExtensionsPart;
270 #endif
271
268 namespace { 272 namespace {
269 273
270 // Cached version of the locale so we can return the locale on the I/O 274 // Cached version of the locale so we can return the locale on the I/O
271 // thread. 275 // thread.
272 base::LazyInstance<std::string> g_io_thread_application_locale; 276 base::LazyInstance<std::string> g_io_thread_application_locale;
273 277
274 #if defined(ENABLE_PLUGINS) 278 #if defined(ENABLE_PLUGINS)
275 // TODO(teravest): Add renderer-side API-specific checking for these APIs so 279 // TODO(teravest): Add renderer-side API-specific checking for these APIs so
276 // that blanket permission isn't granted to all dev channel APIs for these. 280 // that blanket permission isn't granted to all dev channel APIs for these.
277 // http://crbug.com/386743 281 // http://crbug.com/386743
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]); 576 allowed_file_handle_origins_.insert(kPredefinedAllowedFileHandleOrigins[i]);
573 for (size_t i = 0; i < arraysize(kPredefinedAllowedSocketOrigins); ++i) 577 for (size_t i = 0; i < arraysize(kPredefinedAllowedSocketOrigins); ++i)
574 allowed_socket_origins_.insert(kPredefinedAllowedSocketOrigins[i]); 578 allowed_socket_origins_.insert(kPredefinedAllowedSocketOrigins[i]);
575 #endif 579 #endif
576 580
577 #if !defined(OS_ANDROID) 581 #if !defined(OS_ANDROID)
578 TtsExtensionEngine* tts_extension_engine = TtsExtensionEngine::GetInstance(); 582 TtsExtensionEngine* tts_extension_engine = TtsExtensionEngine::GetInstance();
579 TtsController::GetInstance()->SetTtsEngineDelegate(tts_extension_engine); 583 TtsController::GetInstance()->SetTtsEngineDelegate(tts_extension_engine);
580 #endif 584 #endif
581 585
586 #if defined(ENABLE_EXTENSIONS)
582 extra_parts_.push_back(new ChromeContentBrowserClientExtensionsPart); 587 extra_parts_.push_back(new ChromeContentBrowserClientExtensionsPart);
588 #endif
583 } 589 }
584 590
585 ChromeContentBrowserClient::~ChromeContentBrowserClient() { 591 ChromeContentBrowserClient::~ChromeContentBrowserClient() {
586 for (int i = static_cast<int>(extra_parts_.size()) - 1; i >= 0; --i) 592 for (int i = static_cast<int>(extra_parts_.size()) - 1; i >= 0; --i)
587 delete extra_parts_[i]; 593 delete extra_parts_[i];
588 extra_parts_.clear(); 594 extra_parts_.clear();
589 } 595 }
590 596
591 // static 597 // static
592 void ChromeContentBrowserClient::RegisterProfilePrefs( 598 void ChromeContentBrowserClient::RegisterProfilePrefs(
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after
841 847
842 #if !defined(OS_CHROMEOS) 848 #if !defined(OS_CHROMEOS)
843 // If the input |url| should be assigned to the Signin renderer, make its 849 // If the input |url| should be assigned to the Signin renderer, make its
844 // effective URL distinct from other URLs on the signin service's domain. 850 // effective URL distinct from other URLs on the signin service's domain.
845 // Note that the signin renderer will be allowed to sign the user in to 851 // Note that the signin renderer will be allowed to sign the user in to
846 // Chrome. 852 // Chrome.
847 if (SigninManager::IsWebBasedSigninFlowURL(url)) 853 if (SigninManager::IsWebBasedSigninFlowURL(url))
848 return GetEffectiveURLForSignin(url); 854 return GetEffectiveURLForSignin(url);
849 #endif 855 #endif
850 856
857 #if defined(ENABLE_EXTENSIONS)
851 return ChromeContentBrowserClientExtensionsPart::GetEffectiveURL( 858 return ChromeContentBrowserClientExtensionsPart::GetEffectiveURL(
852 profile, url); 859 profile, url);
860 #else
861 return url;
862 #endif
853 } 863 }
854 864
855 bool ChromeContentBrowserClient::ShouldUseProcessPerSite( 865 bool ChromeContentBrowserClient::ShouldUseProcessPerSite(
856 content::BrowserContext* browser_context, const GURL& effective_url) { 866 content::BrowserContext* browser_context, const GURL& effective_url) {
857 // Non-extension, non-Instant URLs should generally use 867 // Non-extension, non-Instant URLs should generally use
858 // process-per-site-instance. Because we expect to use the effective URL, 868 // process-per-site-instance. Because we expect to use the effective URL,
859 // URLs for hosted apps (apart from bookmark apps) should have an extension 869 // URLs for hosted apps (apart from bookmark apps) should have an extension
860 // scheme by now. 870 // scheme by now.
861 871
862 Profile* profile = Profile::FromBrowserContext(browser_context); 872 Profile* profile = Profile::FromBrowserContext(browser_context);
863 if (!profile) 873 if (!profile)
864 return false; 874 return false;
865 875
866 if (chrome::ShouldUseProcessPerSiteForInstantURL(effective_url, profile)) 876 if (chrome::ShouldUseProcessPerSiteForInstantURL(effective_url, profile))
867 return true; 877 return true;
868 878
869 #if !defined(OS_CHROMEOS) 879 #if !defined(OS_CHROMEOS)
870 if (SigninManager::IsWebBasedSigninFlowURL(effective_url)) 880 if (SigninManager::IsWebBasedSigninFlowURL(effective_url))
871 return true; 881 return true;
872 #endif 882 #endif
873 883
884 #if defined(ENABLE_EXTENSIONS)
874 return ChromeContentBrowserClientExtensionsPart::ShouldUseProcessPerSite( 885 return ChromeContentBrowserClientExtensionsPart::ShouldUseProcessPerSite(
875 profile, effective_url); 886 profile, effective_url);
887 #else
888 return false;
889 #endif
876 } 890 }
877 891
878 // These are treated as WebUI schemes but do not get WebUI bindings. Also, 892 // These are treated as WebUI schemes but do not get WebUI bindings. Also,
879 // view-source is allowed for these schemes. 893 // view-source is allowed for these schemes.
880 void ChromeContentBrowserClient::GetAdditionalWebUISchemes( 894 void ChromeContentBrowserClient::GetAdditionalWebUISchemes(
881 std::vector<std::string>* additional_schemes) { 895 std::vector<std::string>* additional_schemes) {
882 additional_schemes->push_back(chrome::kChromeSearchScheme); 896 additional_schemes->push_back(chrome::kChromeSearchScheme);
883 additional_schemes->push_back(dom_distiller::kDomDistillerScheme); 897 additional_schemes->push_back(dom_distiller::kDomDistillerScheme);
884 } 898 }
885 899
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
918 request_interceptors.Pass()); 932 request_interceptors.Pass());
919 } 933 }
920 934
921 bool ChromeContentBrowserClient::IsHandledURL(const GURL& url) { 935 bool ChromeContentBrowserClient::IsHandledURL(const GURL& url) {
922 return ProfileIOData::IsHandledURL(url); 936 return ProfileIOData::IsHandledURL(url);
923 } 937 }
924 938
925 bool ChromeContentBrowserClient::CanCommitURL( 939 bool ChromeContentBrowserClient::CanCommitURL(
926 content::RenderProcessHost* process_host, 940 content::RenderProcessHost* process_host,
927 const GURL& url) { 941 const GURL& url) {
942 #if defined(ENABLE_EXTENSIONS)
928 return ChromeContentBrowserClientExtensionsPart::CanCommitURL( 943 return ChromeContentBrowserClientExtensionsPart::CanCommitURL(
929 process_host, url); 944 process_host, url);
945 #else
946 return true;
947 #endif
930 } 948 }
931 949
932 bool ChromeContentBrowserClient::ShouldAllowOpenURL( 950 bool ChromeContentBrowserClient::ShouldAllowOpenURL(
933 content::SiteInstance* site_instance, const GURL& url) { 951 content::SiteInstance* site_instance, const GURL& url) {
934 GURL from_url = site_instance->GetSiteURL(); 952 GURL from_url = site_instance->GetSiteURL();
935 953
954 #if defined(ENABLE_EXTENSIONS)
936 bool result; 955 bool result;
937 if (ChromeContentBrowserClientExtensionsPart::ShouldAllowOpenURL( 956 if (ChromeContentBrowserClientExtensionsPart::ShouldAllowOpenURL(
938 site_instance, from_url, url, &result)) 957 site_instance, from_url, url, &result))
939 return result; 958 return result;
959 #endif
940 960
941 // Do not allow chrome://chrome-signin navigate to other chrome:// URLs, since 961 // Do not allow chrome://chrome-signin navigate to other chrome:// URLs, since
942 // the signin page may host untrusted web content. 962 // the signin page may host untrusted web content.
943 if (from_url.GetOrigin().spec() == chrome::kChromeUIChromeSigninURL && 963 if (from_url.GetOrigin().spec() == chrome::kChromeUIChromeSigninURL &&
944 url.SchemeIs(content::kChromeUIScheme) && 964 url.SchemeIs(content::kChromeUIScheme) &&
945 url.host() != chrome::kChromeUIChromeSigninHost) { 965 url.host() != chrome::kChromeUIChromeSigninHost) {
946 VLOG(1) << "Blocked navigation to " << url.spec() << " from " 966 VLOG(1) << "Blocked navigation to " << url.spec() << " from "
947 << chrome::kChromeUIChromeSigninURL; 967 << chrome::kChromeUIChromeSigninURL;
948 return false; 968 return false;
949 } 969 }
(...skipping 24 matching lines...) Expand all
974 return is_instant_process && should_be_in_instant_process; 994 return is_instant_process && should_be_in_instant_process;
975 } 995 }
976 996
977 #if !defined(OS_CHROMEOS) 997 #if !defined(OS_CHROMEOS)
978 SigninClient* signin_client = 998 SigninClient* signin_client =
979 ChromeSigninClientFactory::GetForProfile(profile); 999 ChromeSigninClientFactory::GetForProfile(profile);
980 if (signin_client && signin_client->IsSigninProcess(process_host->GetID())) 1000 if (signin_client && signin_client->IsSigninProcess(process_host->GetID()))
981 return SigninManager::IsWebBasedSigninFlowURL(site_url); 1001 return SigninManager::IsWebBasedSigninFlowURL(site_url);
982 #endif 1002 #endif
983 1003
1004 #if defined(ENABLE_EXTENSIONS)
984 return ChromeContentBrowserClientExtensionsPart::IsSuitableHost( 1005 return ChromeContentBrowserClientExtensionsPart::IsSuitableHost(
985 profile, process_host, site_url); 1006 profile, process_host, site_url);
1007 #else
1008 return true;
1009 #endif
986 } 1010 }
987 1011
988 bool ChromeContentBrowserClient::MayReuseHost( 1012 bool ChromeContentBrowserClient::MayReuseHost(
989 content::RenderProcessHost* process_host) { 1013 content::RenderProcessHost* process_host) {
990 // If there is currently a prerender in progress for the host provided, 1014 // If there is currently a prerender in progress for the host provided,
991 // it may not be shared. We require prerenders to be by themselves in a 1015 // it may not be shared. We require prerenders to be by themselves in a
992 // separate process, so that we can monitor their resource usage, and so that 1016 // separate process, so that we can monitor their resource usage, and so that
993 // we can track the cookies that they change. 1017 // we can track the cookies that they change.
994 Profile* profile = Profile::FromBrowserContext( 1018 Profile* profile = Profile::FromBrowserContext(
995 process_host->GetBrowserContext()); 1019 process_host->GetBrowserContext());
996 prerender::PrerenderManager* prerender_manager = 1020 prerender::PrerenderManager* prerender_manager =
997 prerender::PrerenderManagerFactory::GetForProfile(profile); 1021 prerender::PrerenderManagerFactory::GetForProfile(profile);
998 if (prerender_manager && 1022 if (prerender_manager &&
999 !prerender_manager->MayReuseProcessHost(process_host)) { 1023 !prerender_manager->MayReuseProcessHost(process_host)) {
1000 return false; 1024 return false;
1001 } 1025 }
1002 1026
1003 return true; 1027 return true;
1004 } 1028 }
1005 1029
1006 bool ChromeContentBrowserClient::ShouldTryToUseExistingProcessHost( 1030 bool ChromeContentBrowserClient::ShouldTryToUseExistingProcessHost(
1007 content::BrowserContext* browser_context, const GURL& url) { 1031 content::BrowserContext* browser_context, const GURL& url) {
1008 // It has to be a valid URL for us to check for an extension. 1032 // It has to be a valid URL for us to check for an extension.
1009 if (!url.is_valid()) 1033 if (!url.is_valid())
1010 return false; 1034 return false;
1011 1035
1036 #if defined(ENABLE_EXTENSIONS)
1012 Profile* profile = Profile::FromBrowserContext(browser_context); 1037 Profile* profile = Profile::FromBrowserContext(browser_context);
1013 return ChromeContentBrowserClientExtensionsPart:: 1038 return ChromeContentBrowserClientExtensionsPart::
1014 ShouldTryToUseExistingProcessHost( 1039 ShouldTryToUseExistingProcessHost(
1015 profile, url); 1040 profile, url);
1041 #else
1042 return false;
1043 #endif
1016 } 1044 }
1017 1045
1018 void ChromeContentBrowserClient::SiteInstanceGotProcess( 1046 void ChromeContentBrowserClient::SiteInstanceGotProcess(
1019 SiteInstance* site_instance) { 1047 SiteInstance* site_instance) {
1020 CHECK(site_instance->HasProcess()); 1048 CHECK(site_instance->HasProcess());
1021 1049
1022 Profile* profile = Profile::FromBrowserContext( 1050 Profile* profile = Profile::FromBrowserContext(
1023 site_instance->GetBrowserContext()); 1051 site_instance->GetBrowserContext());
1024 if (!profile) 1052 if (!profile)
1025 return; 1053 return;
(...skipping 10 matching lines...) Expand all
1036 1064
1037 #if !defined(OS_CHROMEOS) 1065 #if !defined(OS_CHROMEOS)
1038 // We only expect there to be one signin process as we use process-per-site 1066 // We only expect there to be one signin process as we use process-per-site
1039 // for signin URLs. The signin process will be cleared from SigninManager 1067 // for signin URLs. The signin process will be cleared from SigninManager
1040 // when the renderer is destroyed. 1068 // when the renderer is destroyed.
1041 if (SigninManager::IsWebBasedSigninFlowURL(site_instance->GetSiteURL())) { 1069 if (SigninManager::IsWebBasedSigninFlowURL(site_instance->GetSiteURL())) {
1042 SigninClient* signin_client = 1070 SigninClient* signin_client =
1043 ChromeSigninClientFactory::GetForProfile(profile); 1071 ChromeSigninClientFactory::GetForProfile(profile);
1044 if (signin_client) 1072 if (signin_client)
1045 signin_client->SetSigninProcess(site_instance->GetProcess()->GetID()); 1073 signin_client->SetSigninProcess(site_instance->GetProcess()->GetID());
1074 #if defined(ENABLE_EXTENSIONS)
1046 ChromeContentBrowserClientExtensionsPart::SetSigninProcess(site_instance); 1075 ChromeContentBrowserClientExtensionsPart::SetSigninProcess(site_instance);
1076 #endif
1047 } 1077 }
1048 #endif 1078 #endif
1049 1079
1050 for (size_t i = 0; i < extra_parts_.size(); ++i) 1080 for (size_t i = 0; i < extra_parts_.size(); ++i)
1051 extra_parts_[i]->SiteInstanceGotProcess(site_instance); 1081 extra_parts_[i]->SiteInstanceGotProcess(site_instance);
1052 } 1082 }
1053 1083
1054 void ChromeContentBrowserClient::SiteInstanceDeleting( 1084 void ChromeContentBrowserClient::SiteInstanceDeleting(
1055 SiteInstance* site_instance) { 1085 SiteInstance* site_instance) {
1056 if (!site_instance->HasProcess()) 1086 if (!site_instance->HasProcess())
(...skipping 14 matching lines...) Expand all
1071 SiteInstance* site_instance, 1101 SiteInstance* site_instance,
1072 int worker_process_id) { 1102 int worker_process_id) {
1073 for (size_t i = 0; i < extra_parts_.size(); ++i) 1103 for (size_t i = 0; i < extra_parts_.size(); ++i)
1074 extra_parts_[i]->WorkerProcessTerminated(site_instance, worker_process_id); 1104 extra_parts_[i]->WorkerProcessTerminated(site_instance, worker_process_id);
1075 } 1105 }
1076 1106
1077 bool ChromeContentBrowserClient::ShouldSwapBrowsingInstancesForNavigation( 1107 bool ChromeContentBrowserClient::ShouldSwapBrowsingInstancesForNavigation(
1078 SiteInstance* site_instance, 1108 SiteInstance* site_instance,
1079 const GURL& current_url, 1109 const GURL& current_url,
1080 const GURL& new_url) { 1110 const GURL& new_url) {
1111 #if defined(ENABLE_EXTENSIONS)
1081 return ChromeContentBrowserClientExtensionsPart:: 1112 return ChromeContentBrowserClientExtensionsPart::
1082 ShouldSwapBrowsingInstancesForNavigation( 1113 ShouldSwapBrowsingInstancesForNavigation(
1083 site_instance, current_url, new_url); 1114 site_instance, current_url, new_url);
1115 #else
1116 return false;
1117 #endif
1084 } 1118 }
1085 1119
1086 bool ChromeContentBrowserClient::ShouldSwapProcessesForRedirect( 1120 bool ChromeContentBrowserClient::ShouldSwapProcessesForRedirect(
1087 content::ResourceContext* resource_context, const GURL& current_url, 1121 content::ResourceContext* resource_context, const GURL& current_url,
1088 const GURL& new_url) { 1122 const GURL& new_url) {
1089 #if defined(ENABLE_EXTENSIONS) 1123 #if defined(ENABLE_EXTENSIONS)
1090 return ChromeContentBrowserClientExtensionsPart:: 1124 return ChromeContentBrowserClientExtensionsPart::
1091 ShouldSwapProcessesForRedirect(resource_context, current_url, new_url); 1125 ShouldSwapProcessesForRedirect(resource_context, current_url, new_url);
1092 #else 1126 #else
1093 return false; 1127 return false;
(...skipping 1492 matching lines...) Expand 10 before | Expand all | Expand 10 after
2586 switches::kDisableWebRtcEncryption, 2620 switches::kDisableWebRtcEncryption,
2587 }; 2621 };
2588 to_command_line->CopySwitchesFrom(from_command_line, 2622 to_command_line->CopySwitchesFrom(from_command_line,
2589 kWebRtcDevSwitchNames, 2623 kWebRtcDevSwitchNames,
2590 arraysize(kWebRtcDevSwitchNames)); 2624 arraysize(kWebRtcDevSwitchNames));
2591 } 2625 }
2592 } 2626 }
2593 #endif // defined(ENABLE_WEBRTC) 2627 #endif // defined(ENABLE_WEBRTC)
2594 2628
2595 } // namespace chrome 2629 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/browser_process_impl.cc ('k') | chrome/browser/extensions/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698