| Index: chrome/browser/extensions/api/extension_action/extension_script_badge_api.cc
|
| diff --git a/chrome/browser/extensions/api/extension_action/extension_script_badge_api.cc b/chrome/browser/extensions/api/extension_action/extension_script_badge_api.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..2f7dc7561269ca1754fea5c5dc906902684f32b0
|
| --- /dev/null
|
| +++ b/chrome/browser/extensions/api/extension_action/extension_script_badge_api.cc
|
| @@ -0,0 +1,24 @@
|
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "chrome/browser/extensions/api/extension_action/extension_script_badge_api.h"
|
| +
|
| +#include "chrome/browser/extensions/extension_tab_helper.h"
|
| +#include "chrome/browser/extensions/location_bar_controller.h"
|
| +#include "content/public/browser/web_contents.h"
|
| +
|
| +ScriptBadgeRequestToActFunction::~ScriptBadgeRequestToActFunction() {}
|
| +
|
| +bool ScriptBadgeRequestToActFunction::RunExtensionAction() {
|
| + // Do nothing if the extension already has access to this page or
|
| + // can never be granted access.
|
| + if (!GetExtension()->CanRequestToActOnPage(
|
| + tab_helper().web_contents()->GetURL(), tab_id_)) {
|
| + return true;
|
| + }
|
| +
|
| + tab_helper().location_bar_controller()->
|
| + RequestScriptPermission(extension_id());
|
| + return true;
|
| +}
|
|
|