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

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

Issue 897673002: First step in enabling creating tabs without an Activity on Android. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a-base-mounir
Patch Set: Created 5 years, 10 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 <set> 7 #include <set>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 #include "chrome/browser/chromeos/fileapi/file_system_backend.h" 149 #include "chrome/browser/chromeos/fileapi/file_system_backend.h"
150 #include "chrome/browser/chromeos/fileapi/mtp_file_system_backend_delegate.h" 150 #include "chrome/browser/chromeos/fileapi/mtp_file_system_backend_delegate.h"
151 #include "chrome/browser/chromeos/login/startup_utils.h" 151 #include "chrome/browser/chromeos/login/startup_utils.h"
152 #include "chrome/browser/chromeos/system/input_device_settings.h" 152 #include "chrome/browser/chromeos/system/input_device_settings.h"
153 #include "chromeos/chromeos_switches.h" 153 #include "chromeos/chromeos_switches.h"
154 #include "components/user_manager/user_manager.h" 154 #include "components/user_manager/user_manager.h"
155 #elif defined(OS_LINUX) 155 #elif defined(OS_LINUX)
156 #include "chrome/browser/chrome_browser_main_linux.h" 156 #include "chrome/browser/chrome_browser_main_linux.h"
157 #elif defined(OS_ANDROID) 157 #elif defined(OS_ANDROID)
158 #include "chrome/browser/android/new_tab_page_url_handler.h" 158 #include "chrome/browser/android/new_tab_page_url_handler.h"
159 #include "chrome/browser/android/service_tab_launcher.h"
159 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" 160 #include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h"
160 #include "chrome/browser/chrome_browser_main_android.h" 161 #include "chrome/browser/chrome_browser_main_android.h"
161 #include "chrome/common/descriptors_android.h" 162 #include "chrome/common/descriptors_android.h"
162 #include "components/crash/browser/crash_dump_manager_android.h" 163 #include "components/crash/browser/crash_dump_manager_android.h"
163 #elif defined(OS_POSIX) 164 #elif defined(OS_POSIX)
164 #include "chrome/browser/chrome_browser_main_posix.h" 165 #include "chrome/browser/chrome_browser_main_posix.h"
165 #endif 166 #endif
166 167
167 #if defined(OS_ANDROID) || defined(OS_CHROMEOS) 168 #if defined(OS_ANDROID) || defined(OS_CHROMEOS)
168 #include "chrome/browser/media/protected_media_identifier_permission_context.h" 169 #include "chrome/browser/media/protected_media_identifier_permission_context.h"
(...skipping 2333 matching lines...) Expand 10 before | Expand all | Expand 10 after
2502 2503
2503 bool ChromeContentBrowserClient::CheckMediaAccessPermission( 2504 bool ChromeContentBrowserClient::CheckMediaAccessPermission(
2504 content::BrowserContext* browser_context, 2505 content::BrowserContext* browser_context,
2505 const GURL& security_origin, 2506 const GURL& security_origin,
2506 content::MediaStreamType type) { 2507 content::MediaStreamType type) {
2507 return MediaCaptureDevicesDispatcher::GetInstance() 2508 return MediaCaptureDevicesDispatcher::GetInstance()
2508 ->CheckMediaAccessPermission( 2509 ->CheckMediaAccessPermission(
2509 browser_context, security_origin, type); 2510 browser_context, security_origin, type);
2510 } 2511 }
2511 2512
2512 content::WebContents* ChromeContentBrowserClient::OpenURL( 2513 void ChromeContentBrowserClient::OpenURL(
2513 content::BrowserContext* browser_context, 2514 content::BrowserContext* browser_context,
2514 const content::OpenURLParams& params) { 2515 const content::OpenURLParams& params,
2516 base::Callback<void(content::WebContents*)> callback) {
2515 DCHECK_CURRENTLY_ON(BrowserThread::UI); 2517 DCHECK_CURRENTLY_ON(BrowserThread::UI);
2516 2518
2517 #if !defined(OS_ANDROID) && !defined(OS_IOS) 2519 #if !defined(OS_ANDROID) && !defined(OS_IOS)
2518 NavigateParams nav_params(Profile::FromBrowserContext(browser_context), 2520 NavigateParams nav_params(Profile::FromBrowserContext(browser_context),
2519 params.url, 2521 params.url,
2520 params.transition); 2522 params.transition);
2521 FillNavigateParamsFromOpenURLParams(&nav_params, params); 2523 FillNavigateParamsFromOpenURLParams(&nav_params, params);
2522 nav_params.user_gesture = params.user_gesture; 2524 nav_params.user_gesture = params.user_gesture;
2523 2525
2524 Navigate(&nav_params); 2526 Navigate(&nav_params);
2525 return nav_params.target_contents; 2527 callback.Run(nav_params.target_contents);
2528 #elif defined(OS_ANDROID)
2529 chrome::android::ServiceTabLauncher::GetInstance()->LaunchTab(
2530 browser_context, params, callback);
2526 #else 2531 #else
2527 // TODO(mlamouri): write a chrome::Navigate() method for Android and iOS. 2532 // TODO(mlamouri): write a chrome::Navigate() method for iOS.
2528 // See https://crbug.com/448409. 2533 // See https://crbug.com/448409.
mlamouri (slow - plz ping) 2015/02/09 12:07:37 I think you can remove the TODO and the mention of
Peter Beverloo 2015/02/10 17:49:37 Done.
2529 return nullptr; 2534 NOTIMPLEMENTED();
2530 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) 2535 #endif
2531 } 2536 }
2532 2537
2533 content::DevToolsManagerDelegate* 2538 content::DevToolsManagerDelegate*
2534 ChromeContentBrowserClient::GetDevToolsManagerDelegate() { 2539 ChromeContentBrowserClient::GetDevToolsManagerDelegate() {
2535 #if defined(OS_ANDROID) 2540 #if defined(OS_ANDROID)
2536 return new DevToolsManagerDelegateAndroid(); 2541 return new DevToolsManagerDelegateAndroid();
2537 #else 2542 #else
2538 return new ChromeDevToolsManagerDelegate(); 2543 return new ChromeDevToolsManagerDelegate();
2539 #endif 2544 #endif
2540 } 2545 }
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
2609 switches::kDisableWebRtcEncryption, 2614 switches::kDisableWebRtcEncryption,
2610 }; 2615 };
2611 to_command_line->CopySwitchesFrom(from_command_line, 2616 to_command_line->CopySwitchesFrom(from_command_line,
2612 kWebRtcDevSwitchNames, 2617 kWebRtcDevSwitchNames,
2613 arraysize(kWebRtcDevSwitchNames)); 2618 arraysize(kWebRtcDevSwitchNames));
2614 } 2619 }
2615 } 2620 }
2616 #endif // defined(ENABLE_WEBRTC) 2621 #endif // defined(ENABLE_WEBRTC)
2617 2622
2618 } // namespace chrome 2623 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698