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

Unified Diff: chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc

Issue 1220813013: This patch enables "mailto" links in WebViews. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comment. Created 5 years, 5 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 side-by-side diff with in-line comments
Download patch
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 094ad36d1d50d83749d9d5bfccd19cdb8e1cf1c6..1720cb44df05ce9e2848c8e7a28c7d61f73124f5 100644
--- a/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc
+++ b/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc
@@ -526,8 +526,13 @@ bool ChromeResourceDispatcherHostDelegate::HandleExternalProtocol(
ui::PageTransition page_transition,
bool has_user_gesture) {
#if defined(ENABLE_EXTENSIONS)
- if (extensions::WebViewRendererState::GetInstance()->IsGuest(child_id))
+ // External protocols are disabled for guests. An exception is made for the
+ // "mailto" protocol, so that pages that utilize it work properly in a
+ // WebView.
+ if (extensions::WebViewRendererState::GetInstance()->IsGuest(child_id) &&
+ !url.SchemeIs(url::kMailToScheme)) {
return false;
+ }
#endif // defined(ENABLE_EXTENSIONS)
#if defined(OS_ANDROID)

Powered by Google App Engine
This is Rietveld 408576698