| Index: chrome/browser/extensions/action_box_controller.h
|
| diff --git a/chrome/browser/extensions/action_box_controller.h b/chrome/browser/extensions/action_box_controller.h
|
| index e3415c78b0e318bd442d746f5abf23873ee1587d..e85e37e3faa723fae214b8e06a6c4f6d029389bb 100644
|
| --- a/chrome/browser/extensions/action_box_controller.h
|
| +++ b/chrome/browser/extensions/action_box_controller.h
|
| @@ -6,6 +6,7 @@
|
| #define CHROME_BROWSER_EXTENSIONS_ACTION_BOX_CONTROLLER_H_
|
| #pragma once
|
|
|
| +#include <set>
|
| #include <string>
|
| #include <vector>
|
|
|
| @@ -18,22 +19,6 @@ namespace extensions {
|
| // Controller of the "badges" (aka "page actions") in the UI.
|
| class ActionBoxController {
|
| public:
|
| - // UI decoration on a page box item.
|
| - enum Decoration {
|
| - DECORATION_NONE,
|
| - };
|
| -
|
| - // Data about a UI badge.
|
| - struct Data {
|
| - // The type of decoration that should be applied to the badge.
|
| - Decoration decoration;
|
| -
|
| - // The ExtensionAction that corresponds to the badge.
|
| - ExtensionAction* action;
|
| - };
|
| -
|
| - typedef std::vector<Data> DataList;
|
| -
|
| // The reaction that the UI should take after executing |OnClicked|.
|
| enum Action {
|
| ACTION_NONE,
|
| @@ -43,8 +28,13 @@ class ActionBoxController {
|
|
|
| virtual ~ActionBoxController() {}
|
|
|
| - // Gets the badge data for all extensions.
|
| - virtual scoped_ptr<DataList> GetAllBadgeData() = 0;
|
| + // Utility to add any actions to |out| which aren't present in |actions|.
|
| + static void AddMissingActions(
|
| + const std::set<ExtensionAction*>& actions,
|
| + std::vector<ExtensionAction*>* out);
|
| +
|
| + // Gets the action data for all extensions.
|
| + virtual scoped_ptr<std::vector<ExtensionAction*> > GetCurrentActions() = 0;
|
|
|
| // Notifies this that the badge for an extension has been clicked with some
|
| // mouse button (1 for left, 2 for middle, and 3 for right click), and
|
|
|