summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions/user_script_scheduler.cc
diff options
context:
space:
mode:
authorkalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-13 00:22:57 +0000
committerkalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-13 00:22:57 +0000
commitfc5e65d6b7066e8858fe157c23ed834b4dd1fded (patch)
tree30c8bd3916dd1f0a9720e1385f1e389f287c5f21 /chrome/renderer/extensions/user_script_scheduler.cc
parent242e4d9c7efcb6e14eef2b5657b012259ea97d63 (diff)
downloadchromium_src-fc5e65d6b7066e8858fe157c23ed834b4dd1fded.zip
chromium_src-fc5e65d6b7066e8858fe157c23ed834b4dd1fded.tar.gz
chromium_src-fc5e65d6b7066e8858fe157c23ed834b4dd1fded.tar.bz2
Implement the activeTab permission, so that extensions with the permission
that get tab-specific permissions granted (currently, only via clicking a browser action, but this will expand) can executeScript and captureVisibleTab on that tab only, until the next page navigation or refresh. BUG=93903 Review URL: https://chromiumcodereview.appspot.com/10443105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141801 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions/user_script_scheduler.cc')
-rw-r--r--chrome/renderer/extensions/user_script_scheduler.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/chrome/renderer/extensions/user_script_scheduler.cc b/chrome/renderer/extensions/user_script_scheduler.cc
index dad8cb9..dc4ebee 100644
--- a/chrome/renderer/extensions/user_script_scheduler.cc
+++ b/chrome/renderer/extensions/user_script_scheduler.cc
@@ -133,6 +133,7 @@ void UserScriptScheduler::ExecuteCodeImpl(
params.extension_id);
content::RenderView* render_view =
content::RenderView::FromWebView(frame_->view());
+ ExtensionHelper* extension_helper = ExtensionHelper::Get(render_view);
// Since extension info is sent separately from user script info, they can
// be out of sync. We just ignore this situation.
@@ -162,7 +163,9 @@ void UserScriptScheduler::ExecuteCodeImpl(
// For child frames, we just skip ones the extension doesn't have access
// to and carry on.
if (!extension->CanExecuteScriptOnPage(frame->document().url(),
- NULL, NULL)) {
+ extension_helper->tab_id(),
+ NULL,
+ NULL)) {
if (frame->parent()) {
continue;
} else {