Index: chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.h |
diff --git a/chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.h b/chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.h |
index 3718a62ff9b417dd2b50781468d3a453ddf90ec9..0a5153b0adfd206dc9ed7bf475e4032e3e653243 100644 |
--- a/chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.h |
+++ b/chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.h |
@@ -5,6 +5,8 @@ |
#ifndef CHROME_BROWSER_CHROMEOS_EXTENSIONS_EXTENSION_TAB_UTIL_DELEGATE_CHROMEOS_H_ |
#define CHROME_BROWSER_CHROMEOS_EXTENSIONS_EXTENSION_TAB_UTIL_DELEGATE_CHROMEOS_H_ |
+#include <string> |
+ |
#include "base/macros.h" |
#include "chrome/browser/extensions/extension_tab_util.h" |
@@ -14,25 +16,20 @@ class Tab; |
} |
} |
-namespace content { |
-class WebContents; |
-} |
- |
namespace extensions { |
-class Extension; |
// In Public Sessions, apps and extensions are force-installed by admin policy |
// so the user does not get a chance to review the permissions for these apps. |
// This is not acceptable from a security standpoint, so we scrub the URL |
-// returned by chrome.tabs API down to the origin. |
+// returned by chrome.tabs API down to the origin unless the extension ID is |
+// whitelisted. |
class ExtensionTabUtilDelegateChromeOS : public ExtensionTabUtil::Delegate { |
public: |
ExtensionTabUtilDelegateChromeOS(); |
~ExtensionTabUtilDelegateChromeOS() override; |
// ExtensionTabUtil::Delegate |
- void ScrubTabForExtension(const Extension* extension, |
- content::WebContents* contents, |
+ void ScrubTabForExtension(const std::string& extension_id, |
api::tabs::Tab* tab) override; |
private: |