Chromium Code Reviews| Index: chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc |
| diff --git a/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc b/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc |
| index 3244504f1067639a24453ae84ada03efc30aadec..347cfd0b5af69c11a7d39a16dc43028b5338789f 100644 |
| --- a/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc |
| +++ b/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc |
| @@ -238,8 +238,11 @@ bool IsPluginEnabledForExtension(const Extension* extension, |
| } |
| #endif // !defined(ENABLE_EXTENSIONS) |
| -#if !defined(OS_ANDROID) |
| -void LaunchURL(const GURL& url, int render_process_id, int render_view_id) { |
| +void LaunchURL( |
| + const GURL& url, |
| + int render_process_id, |
| + int render_view_id, |
| + ui::PageTransition page_transition) { |
| // If there is no longer a WebContents, the request may have raced with tab |
| // closing. Don't fire the external request. (It may have been a prerender.) |
| content::WebContents* web_contents = |
| @@ -260,9 +263,9 @@ void LaunchURL(const GURL& url, int render_process_id, int render_view_id) { |
| url, |
| render_process_id, |
| render_view_id, |
| + page_transition, |
| g_external_protocol_handler_delegate); |
| } |
| -#endif // !defined(OS_ANDROID) |
| #if !defined(DISABLE_NACL) |
| void AppendComponentUpdaterThrottles( |
| @@ -515,24 +518,19 @@ ResourceDispatcherHostLoginDelegate* |
| bool ChromeResourceDispatcherHostDelegate::HandleExternalProtocol( |
| const GURL& url, |
| int child_id, |
| - int route_id) { |
| -#if defined(OS_ANDROID) |
| - // Android use a resource throttle to handle external as well as internal |
| - // protocols. |
| - return false; |
| -#else |
| - |
| + int route_id, |
| + ui::PageTransition page_transition) { |
|
Jaekyun Seok (inactive)
2015/04/23 03:59:41
How about running HandleExternalProtocol only when
|
| #if defined(ENABLE_EXTENSIONS) |
| if (extensions::WebViewRendererState::GetInstance()->IsGuest(child_id)) |
| return false; |
| #endif // defined(ENABLE_EXTENSIONS) |
| - BrowserThread::PostTask(BrowserThread::UI, |
| - FROM_HERE, |
| - base::Bind(&LaunchURL, url, child_id, route_id)); |
| + BrowserThread::PostTask( |
| + BrowserThread::UI, |
| + FROM_HERE, |
| + base::Bind(&LaunchURL, url, child_id, route_id, page_transition)); |
| return true; |
| -#endif |
| } |
| void ChromeResourceDispatcherHostDelegate::AppendStandardResourceThrottles( |