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

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

Issue 1739523002: WebUsb Android chooser UI (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase and added NoUnderlineClickableSpan.java to ui/android/BUILD.gn Created 4 years, 9 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 (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 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 #include "content/public/browser/site_instance.h" 148 #include "content/public/browser/site_instance.h"
149 #include "content/public/browser/web_contents.h" 149 #include "content/public/browser/web_contents.h"
150 #include "content/public/common/child_process_host.h" 150 #include "content/public/common/child_process_host.h"
151 #include "content/public/common/content_descriptors.h" 151 #include "content/public/common/content_descriptors.h"
152 #include "content/public/common/content_features.h" 152 #include "content/public/common/content_features.h"
153 #include "content/public/common/content_switches.h" 153 #include "content/public/common/content_switches.h"
154 #include "content/public/common/sandbox_type.h" 154 #include "content/public/common/sandbox_type.h"
155 #include "content/public/common/service_registry.h" 155 #include "content/public/common/service_registry.h"
156 #include "content/public/common/url_utils.h" 156 #include "content/public/common/url_utils.h"
157 #include "content/public/common/web_preferences.h" 157 #include "content/public/common/web_preferences.h"
158 #include "device/usb/public/interfaces/chooser_service.mojom.h"
158 #include "device/usb/public/interfaces/device_manager.mojom.h" 159 #include "device/usb/public/interfaces/device_manager.mojom.h"
159 #include "gin/v8_initializer.h" 160 #include "gin/v8_initializer.h"
160 #include "mojo/shell/public/cpp/shell_client.h" 161 #include "mojo/shell/public/cpp/shell_client.h"
161 #include "net/base/mime_util.h" 162 #include "net/base/mime_util.h"
162 #include "net/cookies/canonical_cookie.h" 163 #include "net/cookies/canonical_cookie.h"
163 #include "net/cookies/cookie_options.h" 164 #include "net/cookies/cookie_options.h"
164 #include "net/ssl/ssl_cert_request_info.h" 165 #include "net/ssl/ssl_cert_request_info.h"
165 #include "ppapi/host/ppapi_host.h" 166 #include "ppapi/host/ppapi_host.h"
166 #include "storage/browser/fileapi/external_mount_points.h" 167 #include "storage/browser/fileapi/external_mount_points.h"
167 #include "ui/base/l10n/l10n_util.h" 168 #include "ui/base/l10n/l10n_util.h"
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 288
288 #if defined(ENABLE_WEBRTC) 289 #if defined(ENABLE_WEBRTC)
289 #include "chrome/browser/media/webrtc_logging_handler_host.h" 290 #include "chrome/browser/media/webrtc_logging_handler_host.h"
290 #endif 291 #endif
291 292
292 #if defined(ENABLE_MEDIA_ROUTER) 293 #if defined(ENABLE_MEDIA_ROUTER)
293 #include "chrome/browser/media/router/media_router_feature.h" 294 #include "chrome/browser/media/router/media_router_feature.h"
294 #include "chrome/browser/media/router/presentation_service_delegate_impl.h" 295 #include "chrome/browser/media/router/presentation_service_delegate_impl.h"
295 #endif 296 #endif
296 297
297 #if !defined(OS_ANDROID)
298 #include "device/usb/public/interfaces/chooser_service.mojom.h"
299 #endif
300
301 #if defined(ENABLE_WAYLAND_SERVER) 298 #if defined(ENABLE_WAYLAND_SERVER)
302 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h" 299 #include "chrome/browser/chrome_browser_main_extra_parts_exo.h"
303 #endif 300 #endif
304 301
305 #if defined(ENABLE_MOJO_MEDIA) 302 #if defined(ENABLE_MOJO_MEDIA)
306 #include "chrome/browser/media/output_protection_impl.h" 303 #include "chrome/browser/media/output_protection_impl.h"
307 #endif 304 #endif
308 305
309 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) 306 #if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
310 #include "media/mojo/services/mojo_media_application_factory.h" 307 #include "media/mojo/services/mojo_media_application_factory.h"
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
687 if (!web_contents) { 684 if (!web_contents) {
688 NOTREACHED(); 685 NOTREACHED();
689 return; 686 return;
690 } 687 }
691 688
692 UsbTabHelper* tab_helper = 689 UsbTabHelper* tab_helper =
693 UsbTabHelper::GetOrCreateForWebContents(web_contents); 690 UsbTabHelper::GetOrCreateForWebContents(web_contents);
694 tab_helper->CreateDeviceManager(render_frame_host, std::move(request)); 691 tab_helper->CreateDeviceManager(render_frame_host, std::move(request));
695 } 692 }
696 693
697 #if !defined(OS_ANDROID)
698 void CreateWebUsbChooserService( 694 void CreateWebUsbChooserService(
699 RenderFrameHost* render_frame_host, 695 RenderFrameHost* render_frame_host,
700 mojo::InterfaceRequest<device::usb::ChooserService> request) { 696 mojo::InterfaceRequest<device::usb::ChooserService> request) {
701 WebContents* web_contents = 697 WebContents* web_contents =
702 WebContents::FromRenderFrameHost(render_frame_host); 698 WebContents::FromRenderFrameHost(render_frame_host);
703 if (!web_contents) { 699 if (!web_contents) {
704 NOTREACHED(); 700 NOTREACHED();
705 return; 701 return;
706 } 702 }
707 703
708 UsbTabHelper* tab_helper = 704 UsbTabHelper* tab_helper =
709 UsbTabHelper::GetOrCreateForWebContents(web_contents); 705 UsbTabHelper::GetOrCreateForWebContents(web_contents);
710 tab_helper->CreateChooserService(render_frame_host, std::move(request)); 706 tab_helper->CreateChooserService(render_frame_host, std::move(request));
711 } 707 }
712 #endif // !defined(OS_ANDROID)
713 708
714 bool GetDataSaverEnabledPref(const PrefService* prefs) { 709 bool GetDataSaverEnabledPref(const PrefService* prefs) {
715 // Enable data saver only when data saver pref is enabled and not part of 710 // Enable data saver only when data saver pref is enabled and not part of
716 // "Disabled" group of "SaveDataHeader" experiment. 711 // "Disabled" group of "SaveDataHeader" experiment.
717 return prefs->GetBoolean(prefs::kDataSaverEnabled) && 712 return prefs->GetBoolean(prefs::kDataSaverEnabled) &&
718 base::FieldTrialList::FindFullName("SaveDataHeader") 713 base::FieldTrialList::FindFullName("SaveDataHeader")
719 .compare("Disabled"); 714 .compare("Disabled");
720 } 715 }
721 716
722 } // namespace 717 } // namespace
(...skipping 2078 matching lines...) Expand 10 before | Expand all | Expand 10 after
2801 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices( 2796 void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
2802 content::ServiceRegistry* registry, 2797 content::ServiceRegistry* registry,
2803 content::RenderFrameHost* render_frame_host) { 2798 content::RenderFrameHost* render_frame_host) {
2804 // WebUSB is an experimental web API. It will only work if the experiment 2799 // WebUSB is an experimental web API. It will only work if the experiment
2805 // is enabled and WebUSB feature is enabled. 2800 // is enabled and WebUSB feature is enabled.
2806 if (base::CommandLine::ForCurrentProcess()->HasSwitch( 2801 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
2807 switches::kEnableExperimentalWebPlatformFeatures) && 2802 switches::kEnableExperimentalWebPlatformFeatures) &&
2808 base::FeatureList::IsEnabled(features::kWebUsb)) { 2803 base::FeatureList::IsEnabled(features::kWebUsb)) {
2809 registry->AddService( 2804 registry->AddService(
2810 base::Bind(&CreateUsbDeviceManager, render_frame_host)); 2805 base::Bind(&CreateUsbDeviceManager, render_frame_host));
2811 #if !defined(OS_ANDROID)
2812 registry->AddService( 2806 registry->AddService(
2813 base::Bind(&CreateWebUsbChooserService, render_frame_host)); 2807 base::Bind(&CreateWebUsbChooserService, render_frame_host));
2814 #endif // !defined(OS_ANDROID)
2815 } 2808 }
2816 } 2809 }
2817 2810
2818 void ChromeContentBrowserClient::RegisterInProcessMojoApplications( 2811 void ChromeContentBrowserClient::RegisterInProcessMojoApplications(
2819 StaticMojoApplicationMap* apps) { 2812 StaticMojoApplicationMap* apps) {
2820 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) 2813 #if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
2821 apps->insert(std::make_pair("mojo:media", 2814 apps->insert(std::make_pair("mojo:media",
2822 base::Bind(&media::CreateMojoMediaApplication))); 2815 base::Bind(&media::CreateMojoMediaApplication)));
2823 #endif 2816 #endif
2824 } 2817 }
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
2986 if (channel <= kMaxDisableEncryptionChannel) { 2979 if (channel <= kMaxDisableEncryptionChannel) {
2987 static const char* const kWebRtcDevSwitchNames[] = { 2980 static const char* const kWebRtcDevSwitchNames[] = {
2988 switches::kDisableWebRtcEncryption, 2981 switches::kDisableWebRtcEncryption,
2989 }; 2982 };
2990 to_command_line->CopySwitchesFrom(from_command_line, 2983 to_command_line->CopySwitchesFrom(from_command_line,
2991 kWebRtcDevSwitchNames, 2984 kWebRtcDevSwitchNames,
2992 arraysize(kWebRtcDevSwitchNames)); 2985 arraysize(kWebRtcDevSwitchNames));
2993 } 2986 }
2994 } 2987 }
2995 #endif // defined(ENABLE_WEBRTC) 2988 #endif // defined(ENABLE_WEBRTC)
OLDNEW
« no previous file with comments | « chrome/browser/android/usb/web_usb_chooser_service_android.cc ('k') | chrome/browser/ui/android/bluetooth_chooser_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698