| OLD | NEW | 
|---|
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #ifndef CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 5 #ifndef CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 
| 6 #define CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 6 #define CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 
| 7 | 7 | 
|  | 8 #include <memory> | 
| 8 #include <string> | 9 #include <string> | 
| 9 | 10 | 
| 10 #include "base/macros.h" | 11 #include "base/macros.h" | 
| 11 #include "base/memory/scoped_ptr.h" |  | 
| 12 #include "chrome/common/extensions/command.h" | 12 #include "chrome/common/extensions/command.h" | 
| 13 #include "extensions/common/extension.h" | 13 #include "extensions/common/extension.h" | 
| 14 #include "extensions/common/manifest.h" | 14 #include "extensions/common/manifest.h" | 
| 15 #include "extensions/common/manifest_handler.h" | 15 #include "extensions/common/manifest_handler.h" | 
| 16 | 16 | 
| 17 namespace extensions { | 17 namespace extensions { | 
| 18 | 18 | 
| 19 struct CommandsInfo : public Extension::ManifestData { | 19 struct CommandsInfo : public Extension::ManifestData { | 
| 20   CommandsInfo(); | 20   CommandsInfo(); | 
| 21   ~CommandsInfo() override; | 21   ~CommandsInfo() override; | 
| 22 | 22 | 
| 23   // Optional list of commands (keyboard shortcuts). | 23   // Optional list of commands (keyboard shortcuts). | 
| 24   // These commands are the commands which the extension wants to use, which are | 24   // These commands are the commands which the extension wants to use, which are | 
| 25   // not necessarily the ones it can use, as it might be inactive (see also | 25   // not necessarily the ones it can use, as it might be inactive (see also | 
| 26   // Get*Command[s] in CommandService). | 26   // Get*Command[s] in CommandService). | 
| 27   scoped_ptr<Command> browser_action_command; | 27   std::unique_ptr<Command> browser_action_command; | 
| 28   scoped_ptr<Command> page_action_command; | 28   std::unique_ptr<Command> page_action_command; | 
| 29   CommandMap named_commands; | 29   CommandMap named_commands; | 
| 30 | 30 | 
| 31   static const Command* GetBrowserActionCommand(const Extension* extension); | 31   static const Command* GetBrowserActionCommand(const Extension* extension); | 
| 32   static const Command* GetPageActionCommand(const Extension* extension); | 32   static const Command* GetPageActionCommand(const Extension* extension); | 
| 33   static const CommandMap* GetNamedCommands(const Extension* extension); | 33   static const CommandMap* GetNamedCommands(const Extension* extension); | 
| 34 }; | 34 }; | 
| 35 | 35 | 
| 36 // Parses the "commands" manifest key. | 36 // Parses the "commands" manifest key. | 
| 37 class CommandsHandler : public ManifestHandler { | 37 class CommandsHandler : public ManifestHandler { | 
| 38  public: | 38  public: | 
| (...skipping 11 matching lines...) Expand all  Loading... | 
| 50                                     CommandsInfo* info); | 50                                     CommandsInfo* info); | 
| 51 | 51 | 
| 52   const std::vector<std::string> Keys() const override; | 52   const std::vector<std::string> Keys() const override; | 
| 53 | 53 | 
| 54   DISALLOW_COPY_AND_ASSIGN(CommandsHandler); | 54   DISALLOW_COPY_AND_ASSIGN(CommandsHandler); | 
| 55 }; | 55 }; | 
| 56 | 56 | 
| 57 }  // namespace extensions | 57 }  // namespace extensions | 
| 58 | 58 | 
| 59 #endif  // CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 59 #endif  // CHROME_COMMON_EXTENSIONS_API_COMMANDS_COMMANDS_HANDLER_H_ | 
| OLD | NEW | 
|---|