| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "chrome/browser/extensions/api/commands/command_service.h" | 5 #include "chrome/browser/extensions/api/commands/command_service.h" |
| 6 | 6 |
| 7 #include "base/lazy_instance.h" | 7 #include "base/lazy_instance.h" |
| 8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
| 9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
| 10 #include "chrome/browser/chrome_notification_types.h" | 10 #include "chrome/browser/chrome_notification_types.h" |
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 const std::string& extension_id, | 118 const std::string& extension_id, |
| 119 QueryType type, | 119 QueryType type, |
| 120 extensions::Command* command, | 120 extensions::Command* command, |
| 121 bool* active) { | 121 bool* active) { |
| 122 return GetExtensionActionCommand( | 122 return GetExtensionActionCommand( |
| 123 extension_id, type, command, active, SCRIPT_BADGE); | 123 extension_id, type, command, active, SCRIPT_BADGE); |
| 124 } | 124 } |
| 125 | 125 |
| 126 bool CommandService::GetNamedCommands(const std::string& extension_id, | 126 bool CommandService::GetNamedCommands(const std::string& extension_id, |
| 127 QueryType type, | 127 QueryType type, |
| 128 CommandScope scope, |
| 128 extensions::CommandMap* command_map) { | 129 extensions::CommandMap* command_map) { |
| 129 const ExtensionSet* extensions = | 130 const ExtensionSet* extensions = |
| 130 ExtensionSystem::Get(profile_)->extension_service()->extensions(); | 131 ExtensionSystem::Get(profile_)->extension_service()->extensions(); |
| 131 const Extension* extension = extensions->GetByID(extension_id); | 132 const Extension* extension = extensions->GetByID(extension_id); |
| 132 CHECK(extension); | 133 CHECK(extension); |
| 133 | 134 |
| 134 command_map->clear(); | 135 command_map->clear(); |
| 135 const extensions::CommandMap* commands = | 136 const extensions::CommandMap* commands = |
| 136 CommandsInfo::GetNamedCommands(extension); | 137 CommandsInfo::GetNamedCommands(extension); |
| 137 if (!commands) | 138 if (!commands) |
| 138 return false; | 139 return false; |
| 139 | 140 |
| 140 extensions::CommandMap::const_iterator iter = commands->begin(); | 141 extensions::CommandMap::const_iterator iter = commands->begin(); |
| 141 for (; iter != commands->end(); ++iter) { | 142 for (; iter != commands->end(); ++iter) { |
| 142 ui::Accelerator shortcut_assigned = | 143 ui::Accelerator shortcut_assigned = |
| 143 FindShortcutForCommand(extension_id, iter->second.command_name()); | 144 FindShortcutForCommand(extension_id, iter->second.command_name()); |
| 144 | 145 |
| 145 if (type == ACTIVE_ONLY && shortcut_assigned.key_code() == ui::VKEY_UNKNOWN) | 146 if (type == ACTIVE_ONLY && shortcut_assigned.key_code() == ui::VKEY_UNKNOWN) |
| 146 continue; | 147 continue; |
| 147 | 148 |
| 148 extensions::Command command = iter->second; | 149 extensions::Command command = iter->second; |
| 150 if (scope != ANY_SCOPE && ((scope == GLOBAL) != command.global())) |
| 151 continue; |
| 152 |
| 149 if (shortcut_assigned.key_code() != ui::VKEY_UNKNOWN) | 153 if (shortcut_assigned.key_code() != ui::VKEY_UNKNOWN) |
| 150 command.set_accelerator(shortcut_assigned); | 154 command.set_accelerator(shortcut_assigned); |
| 151 | 155 |
| 152 (*command_map)[iter->second.command_name()] = command; | 156 (*command_map)[iter->second.command_name()] = command; |
| 153 } | 157 } |
| 154 | 158 |
| 155 return true; | 159 return true; |
| 156 } | 160 } |
| 157 | 161 |
| 158 bool CommandService::AddKeybindingPref( | 162 bool CommandService::AddKeybindingPref( |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 return false; | 402 return false; |
| 399 | 403 |
| 400 *command = *requested_command; | 404 *command = *requested_command; |
| 401 if (shortcut_assigned.key_code() != ui::VKEY_UNKNOWN) | 405 if (shortcut_assigned.key_code() != ui::VKEY_UNKNOWN) |
| 402 command->set_accelerator(shortcut_assigned); | 406 command->set_accelerator(shortcut_assigned); |
| 403 | 407 |
| 404 return true; | 408 return true; |
| 405 } | 409 } |
| 406 | 410 |
| 407 } // namespace extensions | 411 } // namespace extensions |
| OLD | NEW |