| Index: chrome/browser/extensions/extension_menu_manager.h
|
| diff --git a/chrome/browser/extensions/extension_menu_manager.h b/chrome/browser/extensions/extension_menu_manager.h
|
| index 4455ee1a16cc6c56d78a8c18b108ada2efb0e9f7..c8224d11dd70d3990bbb94822624b787f68faa83 100644
|
| --- a/chrome/browser/extensions/extension_menu_manager.h
|
| +++ b/chrome/browser/extensions/extension_menu_manager.h
|
| @@ -33,9 +33,20 @@ class ExtensionMenuItem {
|
| // A list of ExtensionMenuItem's.
|
| typedef std::vector<ExtensionMenuItem*> List;
|
|
|
| - // An Id is a pair of |extension id|, |int| where the |int| is unique per
|
| - // extension.
|
| - typedef std::pair<std::string, int> Id;
|
| + // An Id uniquely identifies a context menu item registered by an extension.
|
| + struct Id {
|
| + Id();
|
| + Id(Profile* profile, std::string extension_id, int uid);
|
| + ~Id();
|
| +
|
| + bool operator==(const Id& other) const;
|
| + bool operator!=(const Id& other) const;
|
| + bool operator<(const Id& other) const;
|
| +
|
| + Profile* profile;
|
| + std::string extension_id;
|
| + int uid;
|
| + };
|
|
|
| // For context menus, these are the contexts where an item can appear.
|
| enum Context {
|
| @@ -93,7 +104,7 @@ class ExtensionMenuItem {
|
| virtual ~ExtensionMenuItem();
|
|
|
| // Simple accessor methods.
|
| - const std::string& extension_id() const { return id_.first; }
|
| + const std::string& extension_id() const { return id_.extension_id; }
|
| const std::string& title() const { return title_; }
|
| const List& children() { return children_; }
|
| const Id& id() const { return id_; }
|
|
|