Index: chrome/browser/extensions/active_tab_permission_granter.cc |
diff --git a/chrome/browser/extensions/active_tab_permission_granter.cc b/chrome/browser/extensions/active_tab_permission_granter.cc |
index d7e00b0aa79d59a73cabc9fc81a40fba11c159d1..4316b48a7a594d5894bc66a09ef1f1b5d39dbfa0 100644 |
--- a/chrome/browser/extensions/active_tab_permission_granter.cc |
+++ b/chrome/browser/extensions/active_tab_permission_granter.cc |
@@ -6,6 +6,7 @@ |
#include "chrome/browser/chrome_notification_types.h" |
#include "chrome/browser/extensions/extension_service.h" |
+#include "chrome/browser/external_protocol/external_protocol_handler.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/sessions/session_id.h" |
#include "chrome/common/extensions/extension_messages.h" |
@@ -37,6 +38,11 @@ ActiveTabPermissionGranter::ActiveTabPermissionGranter( |
ActiveTabPermissionGranter::~ActiveTabPermissionGranter() {} |
void ActiveTabPermissionGranter::GrantIfRequested(const Extension* extension) { |
+ |
+ // Active tab implies user gesture, which should enable external protocol |
+ // handler dialog. |
+ ExternalProtocolHandler::PermitLaunchUrl(); |
+ |
if (granted_extensions_.Contains(extension->id())) |
return; |