Index: chrome/browser/chrome_content_browser_client.cc |
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc |
index 558d739fef88ca3df3e29bc61b303f012b1109b3..7caf39d87aff9142703a8c0a7daaad02d1ec79c2 100644 |
--- a/chrome/browser/chrome_content_browser_client.cc |
+++ b/chrome/browser/chrome_content_browser_client.cc |
@@ -156,6 +156,7 @@ |
#include "chrome/browser/chrome_browser_main_linux.h" |
#elif defined(OS_ANDROID) |
#include "chrome/browser/android/new_tab_page_url_handler.h" |
+#include "chrome/browser/android/service_tab_launcher.h" |
#include "chrome/browser/android/webapps/single_tab_mode_tab_helper.h" |
#include "chrome/browser/chrome_browser_main_android.h" |
#include "chrome/common/descriptors_android.h" |
@@ -2509,9 +2510,10 @@ bool ChromeContentBrowserClient::CheckMediaAccessPermission( |
browser_context, security_origin, type); |
} |
-content::WebContents* ChromeContentBrowserClient::OpenURL( |
+void ChromeContentBrowserClient::OpenURL( |
content::BrowserContext* browser_context, |
- const content::OpenURLParams& params) { |
+ const content::OpenURLParams& params, |
+ base::Callback<void(content::WebContents*)> callback) { |
DCHECK_CURRENTLY_ON(BrowserThread::UI); |
#if !defined(OS_ANDROID) && !defined(OS_IOS) |
@@ -2522,12 +2524,15 @@ content::WebContents* ChromeContentBrowserClient::OpenURL( |
nav_params.user_gesture = params.user_gesture; |
Navigate(&nav_params); |
- return nav_params.target_contents; |
+ callback.Run(nav_params.target_contents); |
+#elif defined(OS_ANDROID) |
+ chrome::android::ServiceTabLauncher::GetInstance()->LaunchTab( |
+ browser_context, params, callback); |
#else |
- // TODO(mlamouri): write a chrome::Navigate() method for Android and iOS. |
+ // TODO(mlamouri): write a chrome::Navigate() method for iOS. |
// 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.
|
- return nullptr; |
-#endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
+ NOTIMPLEMENTED(); |
+#endif |
} |
content::DevToolsManagerDelegate* |