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

Side by Side Diff: chrome/browser/extensions/chrome_extensions_browser_client.cc

Issue 2379573008: Add SetImageData api to chrome.clipboard. (Closed)
Patch Set: Add a string for prompting clipboard write permission for installing chrome.clipboard. Created 4 years, 2 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
OLDNEW
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/memory/ptr_util.h"
11 #include "base/version.h" 11 #include "base/version.h"
12 #include "build/build_config.h" 12 #include "build/build_config.h"
13 #include "chrome/browser/app_mode/app_mode_utils.h" 13 #include "chrome/browser/app_mode/app_mode_utils.h"
14 #include "chrome/browser/browser_process.h" 14 #include "chrome/browser/browser_process.h"
15 #include "chrome/browser/extensions/activity_log/activity_log.h" 15 #include "chrome/browser/extensions/activity_log/activity_log.h"
16 #include "chrome/browser/extensions/api/chrome_extensions_api_client.h" 16 #include "chrome/browser/extensions/api/chrome_extensions_api_client.h"
17 #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"
18 #include "chrome/browser/extensions/api/generated_api_registration.h" 18 #include "chrome/browser/extensions/api/generated_api_registration.h"
19 #include "chrome/browser/extensions/api/preference/chrome_direct_setting.h" 19 #include "chrome/browser/extensions/api/preference/chrome_direct_setting.h"
20 #include "chrome/browser/extensions/api/preference/preference_api.h" 20 #include "chrome/browser/extensions/api/preference/preference_api.h"
21 #include "chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.h" 21 #include "chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.h"
22 #include "chrome/browser/extensions/chrome_component_extension_resource_manager. h" 22 #include "chrome/browser/extensions/chrome_component_extension_resource_manager. h"
23 #include "chrome/browser/extensions/chrome_extension_api_frame_id_map_helper.h" 23 #include "chrome/browser/extensions/chrome_extension_api_frame_id_map_helper.h"
24 #include "chrome/browser/extensions/chrome_extension_host_delegate.h" 24 #include "chrome/browser/extensions/chrome_extension_host_delegate.h"
25 #include "chrome/browser/extensions/chrome_extension_web_contents_observer.h" 25 #include "chrome/browser/extensions/chrome_extension_web_contents_observer.h"
26 #include "chrome/browser/extensions/chrome_kiosk_delegate.h" 26 #include "chrome/browser/extensions/chrome_kiosk_delegate.h"
27 #include "chrome/browser/extensions/chrome_mojo_service_registration.h" 27 #include "chrome/browser/extensions/chrome_mojo_service_registration.h"
28 #include "chrome/browser/extensions/chrome_process_manager_delegate.h" 28 #include "chrome/browser/extensions/chrome_process_manager_delegate.h"
29 #include "chrome/browser/extensions/chrome_url_request_util.h" 29 #include "chrome/browser/extensions/chrome_url_request_util.h"
30 #include "chrome/browser/extensions/clipboard_extension_helper.h"
30 #include "chrome/browser/extensions/error_console/error_console.h" 31 #include "chrome/browser/extensions/error_console/error_console.h"
31 #include "chrome/browser/extensions/event_router_forwarder.h" 32 #include "chrome/browser/extensions/event_router_forwarder.h"
32 #include "chrome/browser/extensions/extension_system_factory.h" 33 #include "chrome/browser/extensions/extension_system_factory.h"
33 #include "chrome/browser/extensions/extension_util.h" 34 #include "chrome/browser/extensions/extension_util.h"
34 #include "chrome/browser/extensions/menu_manager.h" 35 #include "chrome/browser/extensions/menu_manager.h"
35 #include "chrome/browser/extensions/updater/chrome_update_client_config.h" 36 #include "chrome/browser/extensions/updater/chrome_update_client_config.h"
36 #include "chrome/browser/external_protocol/external_protocol_handler.h" 37 #include "chrome/browser/external_protocol/external_protocol_handler.h"
37 #include "chrome/browser/profiles/profile.h" 38 #include "chrome/browser/profiles/profile.h"
38 #include "chrome/browser/profiles/profile_manager.h" 39 #include "chrome/browser/profiles/profile_manager.h"
39 #include "chrome/browser/sessions/session_tab_helper.h" 40 #include "chrome/browser/sessions/session_tab_helper.h"
(...skipping 28 matching lines...) Expand all
68 69
69 namespace extensions { 70 namespace extensions {
70 71
71 ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() { 72 ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() {
72 process_manager_delegate_.reset(new ChromeProcessManagerDelegate); 73 process_manager_delegate_.reset(new ChromeProcessManagerDelegate);
73 api_client_.reset(new ChromeExtensionsAPIClient); 74 api_client_.reset(new ChromeExtensionsAPIClient);
74 // Only set if it hasn't already been set (e.g. by a test). 75 // Only set if it hasn't already been set (e.g. by a test).
75 if (GetCurrentChannel() == GetDefaultChannel()) 76 if (GetCurrentChannel() == GetDefaultChannel())
76 SetCurrentChannel(chrome::GetChannel()); 77 SetCurrentChannel(chrome::GetChannel());
77 resource_manager_.reset(new ChromeComponentExtensionResourceManager()); 78 resource_manager_.reset(new ChromeComponentExtensionResourceManager());
79 clipboard_extension_helper_.reset(new ClipboardExtensionHelper());
78 } 80 }
79 81
80 ChromeExtensionsBrowserClient::~ChromeExtensionsBrowserClient() {} 82 ChromeExtensionsBrowserClient::~ChromeExtensionsBrowserClient() {}
81 83
82 bool ChromeExtensionsBrowserClient::IsShuttingDown() { 84 bool ChromeExtensionsBrowserClient::IsShuttingDown() {
83 return g_browser_process->IsShuttingDown(); 85 return g_browser_process->IsShuttingDown();
84 } 86 }
85 87
86 bool ChromeExtensionsBrowserClient::AreExtensionsDisabled( 88 bool ChromeExtensionsBrowserClient::AreExtensionsDisabled(
87 const base::CommandLine& command_line, 89 const base::CommandLine& command_line,
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
327 base::Version browser_version = 329 base::Version browser_version =
328 base::Version(version_info::GetVersionNumber()); 330 base::Version(version_info::GetVersionNumber());
329 base::Version browser_min_version(min_version); 331 base::Version browser_min_version(min_version);
330 if (browser_version.IsValid() && browser_min_version.IsValid() && 332 if (browser_version.IsValid() && browser_min_version.IsValid() &&
331 browser_min_version.CompareTo(browser_version) > 0) { 333 browser_min_version.CompareTo(browser_version) > 0) {
332 return false; 334 return false;
333 } 335 }
334 return true; 336 return true;
335 } 337 }
336 338
339 void ChromeExtensionsBrowserClient::SaveImageDataToClipboard(
340 const std::vector<char>& image_data,
341 const std::string& type,
342 const base::Closure& success_callback,
343 const base::Closure& error_callback) {
344 clipboard_extension_helper_->DecodeAndSaveImageData(
345 image_data, type, success_callback, error_callback);
346 }
347
337 ExtensionWebContentsObserver* 348 ExtensionWebContentsObserver*
338 ChromeExtensionsBrowserClient::GetExtensionWebContentsObserver( 349 ChromeExtensionsBrowserClient::GetExtensionWebContentsObserver(
339 content::WebContents* web_contents) { 350 content::WebContents* web_contents) {
340 return ChromeExtensionWebContentsObserver::FromWebContents(web_contents); 351 return ChromeExtensionWebContentsObserver::FromWebContents(web_contents);
341 } 352 }
342 353
343 void ChromeExtensionsBrowserClient::ReportError( 354 void ChromeExtensionsBrowserClient::ReportError(
344 content::BrowserContext* context, 355 content::BrowserContext* context,
345 std::unique_ptr<ExtensionError> error) { 356 std::unique_ptr<ExtensionError> error) {
346 ErrorConsole::Get(context)->ReportError(std::move(error)); 357 ErrorConsole::Get(context)->ReportError(std::move(error));
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 return activity_log && activity_log->is_active(); 429 return activity_log && activity_log->is_active();
419 } 430 }
420 431
421 KioskDelegate* ChromeExtensionsBrowserClient::GetKioskDelegate() { 432 KioskDelegate* ChromeExtensionsBrowserClient::GetKioskDelegate() {
422 if (!kiosk_delegate_) 433 if (!kiosk_delegate_)
423 kiosk_delegate_.reset(new ChromeKioskDelegate()); 434 kiosk_delegate_.reset(new ChromeKioskDelegate());
424 return kiosk_delegate_.get(); 435 return kiosk_delegate_.get();
425 } 436 }
426 437
427 } // namespace extensions 438 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698