| Index: chrome/browser/ui/cocoa/accelerators_cocoa.h
|
| diff --git a/chrome/browser/ui/cocoa/accelerators_cocoa.h b/chrome/browser/ui/cocoa/accelerators_cocoa.h
|
| index cc1840ca5fb18b093e1a96449e2f6ba08c703992..3669b4cbb57f56c8badea1a0f310c4e1c75b3d66 100644
|
| --- a/chrome/browser/ui/cocoa/accelerators_cocoa.h
|
| +++ b/chrome/browser/ui/cocoa/accelerators_cocoa.h
|
| @@ -5,8 +5,12 @@
|
| #ifndef CHROME_BROWSER_UI_COCOA_ACCELERATORS_COCOA_H_
|
| #define CHROME_BROWSER_UI_COCOA_ACCELERATORS_COCOA_H_
|
|
|
| +#import <Cocoa/Cocoa.h>
|
| +
|
| #include <map>
|
| +#include <vector>
|
|
|
| +#include "base/gtest_prod_util.h"
|
| #include "ui/base/accelerators/accelerator.h"
|
|
|
| template <typename T> struct DefaultSingletonTraits;
|
| @@ -26,6 +30,7 @@ template <typename T> struct DefaultSingletonTraits;
|
| class AcceleratorsCocoa {
|
| public:
|
| typedef std::map<int, ui::Accelerator> AcceleratorMap;
|
| + typedef std::vector<ui::Accelerator> AcceleratorVector;
|
| typedef AcceleratorMap::const_iterator const_iterator;
|
|
|
| const_iterator const begin() { return accelerators_.begin(); }
|
| @@ -33,17 +38,30 @@ class AcceleratorsCocoa {
|
|
|
| // Returns NULL if there is no accelerator for the command.
|
| const ui::Accelerator* GetAcceleratorForCommand(int command_id);
|
| + // Searches the list of accelerators without a command_id for an accelerator
|
| + // that matches the given |key_equivalent| and |modifiers|.
|
| + const ui::Accelerator* GetAcceleratorForHotKey(
|
| + NSString* key_equivalent, NSUInteger modifiers) const;
|
|
|
| // Returns the singleton instance.
|
| static AcceleratorsCocoa* GetInstance();
|
|
|
| private:
|
| friend struct DefaultSingletonTraits<AcceleratorsCocoa>;
|
| + FRIEND_TEST_ALL_PREFIXES(AcceleratorsCocoaBrowserTest,
|
| + MappingAcceleratorsInMainMenu);
|
|
|
| AcceleratorsCocoa();
|
| ~AcceleratorsCocoa();
|
|
|
| + // A map from command_id to Accelerator. The accelerator is fully filled out,
|
| + // and its platform_accelerator is also fully filled out.
|
| + // Contains accelerators from both the wrench menu and the main menu.
|
| AcceleratorMap accelerators_;
|
| + // A list of accelerators used in the main menu that have no associated
|
| + // command_id. The accelerator is fully filled out, and its
|
| + // platform_accelerator is also fully filled out.
|
| + AcceleratorVector accelerator_vector_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(AcceleratorsCocoa);
|
| };
|
|
|