| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/extensions/chrome_extensions_browser_client.h" | 5 #include "chrome/browser/extensions/chrome_extensions_browser_client.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/memory/ptr_util.h" |
| 10 #include "base/version.h" | 11 #include "base/version.h" |
| 11 #include "build/build_config.h" | 12 #include "build/build_config.h" |
| 12 #include "chrome/browser/app_mode/app_mode_utils.h" | 13 #include "chrome/browser/app_mode/app_mode_utils.h" |
| 13 #include "chrome/browser/browser_process.h" | 14 #include "chrome/browser/browser_process.h" |
| 14 #include "chrome/browser/extensions/activity_log/activity_log.h" | 15 #include "chrome/browser/extensions/activity_log/activity_log.h" |
| 15 #include "chrome/browser/extensions/api/chrome_extensions_api_client.h" | 16 #include "chrome/browser/extensions/api/chrome_extensions_api_client.h" |
| 16 #include "chrome/browser/extensions/api/content_settings/content_settings_servic
e.h" | 17 #include "chrome/browser/extensions/api/content_settings/content_settings_servic
e.h" |
| 17 #include "chrome/browser/extensions/api/generated_api_registration.h" | 18 #include "chrome/browser/extensions/api/generated_api_registration.h" |
| 18 #include "chrome/browser/extensions/api/preference/chrome_direct_setting.h" | 19 #include "chrome/browser/extensions/api/preference/chrome_direct_setting.h" |
| 19 #include "chrome/browser/extensions/api/preference/preference_api.h" | 20 #include "chrome/browser/extensions/api/preference/preference_api.h" |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 182 content::BrowserContext* context, | 183 content::BrowserContext* context, |
| 183 std::vector<ExtensionPrefsObserver*>* observers) const { | 184 std::vector<ExtensionPrefsObserver*>* observers) const { |
| 184 observers->push_back(ContentSettingsService::Get(context)); | 185 observers->push_back(ContentSettingsService::Get(context)); |
| 185 } | 186 } |
| 186 | 187 |
| 187 ProcessManagerDelegate* | 188 ProcessManagerDelegate* |
| 188 ChromeExtensionsBrowserClient::GetProcessManagerDelegate() const { | 189 ChromeExtensionsBrowserClient::GetProcessManagerDelegate() const { |
| 189 return process_manager_delegate_.get(); | 190 return process_manager_delegate_.get(); |
| 190 } | 191 } |
| 191 | 192 |
| 192 scoped_ptr<ExtensionHostDelegate> | 193 std::unique_ptr<ExtensionHostDelegate> |
| 193 ChromeExtensionsBrowserClient::CreateExtensionHostDelegate() { | 194 ChromeExtensionsBrowserClient::CreateExtensionHostDelegate() { |
| 194 return scoped_ptr<ExtensionHostDelegate>(new ChromeExtensionHostDelegate); | 195 return std::unique_ptr<ExtensionHostDelegate>( |
| 196 new ChromeExtensionHostDelegate); |
| 195 } | 197 } |
| 196 | 198 |
| 197 bool ChromeExtensionsBrowserClient::DidVersionUpdate( | 199 bool ChromeExtensionsBrowserClient::DidVersionUpdate( |
| 198 content::BrowserContext* context) { | 200 content::BrowserContext* context) { |
| 199 Profile* profile = static_cast<Profile*>(context); | 201 Profile* profile = static_cast<Profile*>(context); |
| 200 | 202 |
| 201 // Unit tests may not provide prefs; assume everything is up-to-date. | 203 // Unit tests may not provide prefs; assume everything is up-to-date. |
| 202 ExtensionPrefs* extension_prefs = ExtensionPrefs::Get(profile); | 204 ExtensionPrefs* extension_prefs = ExtensionPrefs::Get(profile); |
| 203 if (!extension_prefs) | 205 if (!extension_prefs) |
| 204 return false; | 206 return false; |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 api::ChromeGeneratedFunctionRegistry::RegisterAll(registry); | 277 api::ChromeGeneratedFunctionRegistry::RegisterAll(registry); |
| 276 } | 278 } |
| 277 | 279 |
| 278 void ChromeExtensionsBrowserClient::RegisterMojoServices( | 280 void ChromeExtensionsBrowserClient::RegisterMojoServices( |
| 279 content::RenderFrameHost* render_frame_host, | 281 content::RenderFrameHost* render_frame_host, |
| 280 const Extension* extension) const { | 282 const Extension* extension) const { |
| 281 RegisterServicesForFrame(render_frame_host, extension); | 283 RegisterServicesForFrame(render_frame_host, extension); |
| 282 RegisterChromeServicesForFrame(render_frame_host, extension); | 284 RegisterChromeServicesForFrame(render_frame_host, extension); |
| 283 } | 285 } |
| 284 | 286 |
| 285 scoped_ptr<RuntimeAPIDelegate> | 287 std::unique_ptr<RuntimeAPIDelegate> |
| 286 ChromeExtensionsBrowserClient::CreateRuntimeAPIDelegate( | 288 ChromeExtensionsBrowserClient::CreateRuntimeAPIDelegate( |
| 287 content::BrowserContext* context) const { | 289 content::BrowserContext* context) const { |
| 288 return scoped_ptr<RuntimeAPIDelegate>(new ChromeRuntimeAPIDelegate(context)); | 290 return std::unique_ptr<RuntimeAPIDelegate>( |
| 291 new ChromeRuntimeAPIDelegate(context)); |
| 289 } | 292 } |
| 290 | 293 |
| 291 const ComponentExtensionResourceManager* | 294 const ComponentExtensionResourceManager* |
| 292 ChromeExtensionsBrowserClient::GetComponentExtensionResourceManager() { | 295 ChromeExtensionsBrowserClient::GetComponentExtensionResourceManager() { |
| 293 return resource_manager_.get(); | 296 return resource_manager_.get(); |
| 294 } | 297 } |
| 295 | 298 |
| 296 void ChromeExtensionsBrowserClient::BroadcastEventToRenderers( | 299 void ChromeExtensionsBrowserClient::BroadcastEventToRenderers( |
| 297 events::HistogramValue histogram_value, | 300 events::HistogramValue histogram_value, |
| 298 const std::string& event_name, | 301 const std::string& event_name, |
| 299 scoped_ptr<base::ListValue> args) { | 302 std::unique_ptr<base::ListValue> args) { |
| 300 g_browser_process->extension_event_router_forwarder() | 303 g_browser_process->extension_event_router_forwarder() |
| 301 ->BroadcastEventToRenderers(histogram_value, event_name, std::move(args), | 304 ->BroadcastEventToRenderers(histogram_value, event_name, std::move(args), |
| 302 GURL()); | 305 GURL()); |
| 303 } | 306 } |
| 304 | 307 |
| 305 net::NetLog* ChromeExtensionsBrowserClient::GetNetLog() { | 308 net::NetLog* ChromeExtensionsBrowserClient::GetNetLog() { |
| 306 return g_browser_process->net_log(); | 309 return g_browser_process->net_log(); |
| 307 } | 310 } |
| 308 | 311 |
| 309 ExtensionCache* ChromeExtensionsBrowserClient::GetExtensionCache() { | 312 ExtensionCache* ChromeExtensionsBrowserClient::GetExtensionCache() { |
| 310 if (!extension_cache_.get()) { | 313 if (!extension_cache_.get()) { |
| 311 #if defined(OS_CHROMEOS) | 314 #if defined(OS_CHROMEOS) |
| 312 extension_cache_.reset(new ExtensionCacheImpl( | 315 extension_cache_.reset(new ExtensionCacheImpl( |
| 313 make_scoped_ptr(new ChromeOSExtensionCacheDelegate()))); | 316 base::WrapUnique(new ChromeOSExtensionCacheDelegate()))); |
| 314 #else | 317 #else |
| 315 extension_cache_.reset(new NullExtensionCache()); | 318 extension_cache_.reset(new NullExtensionCache()); |
| 316 #endif | 319 #endif |
| 317 } | 320 } |
| 318 return extension_cache_.get(); | 321 return extension_cache_.get(); |
| 319 } | 322 } |
| 320 | 323 |
| 321 bool ChromeExtensionsBrowserClient::IsBackgroundUpdateAllowed() { | 324 bool ChromeExtensionsBrowserClient::IsBackgroundUpdateAllowed() { |
| 322 return !base::CommandLine::ForCurrentProcess()->HasSwitch( | 325 return !base::CommandLine::ForCurrentProcess()->HasSwitch( |
| 323 switches::kDisableBackgroundNetworking); | 326 switches::kDisableBackgroundNetworking); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 336 } | 339 } |
| 337 | 340 |
| 338 ExtensionWebContentsObserver* | 341 ExtensionWebContentsObserver* |
| 339 ChromeExtensionsBrowserClient::GetExtensionWebContentsObserver( | 342 ChromeExtensionsBrowserClient::GetExtensionWebContentsObserver( |
| 340 content::WebContents* web_contents) { | 343 content::WebContents* web_contents) { |
| 341 return ChromeExtensionWebContentsObserver::FromWebContents(web_contents); | 344 return ChromeExtensionWebContentsObserver::FromWebContents(web_contents); |
| 342 } | 345 } |
| 343 | 346 |
| 344 void ChromeExtensionsBrowserClient::ReportError( | 347 void ChromeExtensionsBrowserClient::ReportError( |
| 345 content::BrowserContext* context, | 348 content::BrowserContext* context, |
| 346 scoped_ptr<ExtensionError> error) { | 349 std::unique_ptr<ExtensionError> error) { |
| 347 ErrorConsole::Get(context)->ReportError(std::move(error)); | 350 ErrorConsole::Get(context)->ReportError(std::move(error)); |
| 348 } | 351 } |
| 349 | 352 |
| 350 void ChromeExtensionsBrowserClient::CleanUpWebView( | 353 void ChromeExtensionsBrowserClient::CleanUpWebView( |
| 351 content::BrowserContext* browser_context, | 354 content::BrowserContext* browser_context, |
| 352 int embedder_process_id, | 355 int embedder_process_id, |
| 353 int view_instance_id) { | 356 int view_instance_id) { |
| 354 // Clean up context menus for the WebView. | 357 // Clean up context menus for the WebView. |
| 355 auto menu_manager = | 358 auto menu_manager = |
| 356 MenuManager::Get(Profile::FromBrowserContext(browser_context)); | 359 MenuManager::Get(Profile::FromBrowserContext(browser_context)); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 scoped_refptr<update_client::UpdateClient> | 398 scoped_refptr<update_client::UpdateClient> |
| 396 ChromeExtensionsBrowserClient::CreateUpdateClient( | 399 ChromeExtensionsBrowserClient::CreateUpdateClient( |
| 397 content::BrowserContext* context) { | 400 content::BrowserContext* context) { |
| 398 return update_client::UpdateClientFactory( | 401 return update_client::UpdateClientFactory( |
| 399 make_scoped_refptr(new ChromeUpdateClientConfig(context))); | 402 make_scoped_refptr(new ChromeUpdateClientConfig(context))); |
| 400 } | 403 } |
| 401 | 404 |
| 402 std::unique_ptr<ExtensionApiFrameIdMapHelper> | 405 std::unique_ptr<ExtensionApiFrameIdMapHelper> |
| 403 ChromeExtensionsBrowserClient::CreateExtensionApiFrameIdMapHelper( | 406 ChromeExtensionsBrowserClient::CreateExtensionApiFrameIdMapHelper( |
| 404 ExtensionApiFrameIdMap* map) { | 407 ExtensionApiFrameIdMap* map) { |
| 405 return make_scoped_ptr(new ChromeExtensionApiFrameIdMapHelper(map)); | 408 return base::WrapUnique(new ChromeExtensionApiFrameIdMapHelper(map)); |
| 406 } | 409 } |
| 407 | 410 |
| 408 } // namespace extensions | 411 } // namespace extensions |
| OLD | NEW |