summaryrefslogtreecommitdiffstats
path: root/ui/base
diff options
context:
space:
mode:
authorfinnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-23 15:29:08 +0000
committerfinnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-23 15:29:08 +0000
commitea11a0d0876e3b81ca9f78f78f704f931b57088c (patch)
tree068c0191c537214fff33e4b12198b3cff587a74e /ui/base
parent16cddbcefd7a364c416ffd352da8767170f29551 (diff)
downloadchromium_src-ea11a0d0876e3b81ca9f78f78f704f931b57088c.zip
chromium_src-ea11a0d0876e3b81ca9f78f78f704f931b57088c.tar.gz
chromium_src-ea11a0d0876e3b81ca9f78f78f704f931b57088c.tar.bz2
Add support for Command key for Extension Commands (on Mac).
BUG=27702 TEST=Assign a shortcut Command+something to an Extension Command and make sure it works. Review URL: https://chromiumcodereview.appspot.com/10827441 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152994 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/base')
-rw-r--r--ui/base/accelerators/accelerator.cc13
-rw-r--r--ui/base/accelerators/accelerator.h1
-rw-r--r--ui/base/strings/ui_strings.grd3
3 files changed, 14 insertions, 3 deletions
diff --git a/ui/base/accelerators/accelerator.cc b/ui/base/accelerators/accelerator.cc
index 262c341..1980225 100644
--- a/ui/base/accelerators/accelerator.cc
+++ b/ui/base/accelerators/accelerator.cc
@@ -71,15 +71,19 @@ bool Accelerator::operator !=(const Accelerator& rhs) const {
}
bool Accelerator::IsShiftDown() const {
- return (modifiers_ & EF_SHIFT_DOWN) == EF_SHIFT_DOWN;
+ return (modifiers_ & EF_SHIFT_DOWN) != 0;
}
bool Accelerator::IsCtrlDown() const {
- return (modifiers_ & EF_CONTROL_DOWN) == EF_CONTROL_DOWN;
+ return (modifiers_ & EF_CONTROL_DOWN) != 0;
}
bool Accelerator::IsAltDown() const {
- return (modifiers_ & EF_ALT_DOWN) == EF_ALT_DOWN;
+ return (modifiers_ & EF_ALT_DOWN) != 0;
+}
+
+bool Accelerator::IsCmdDown() const {
+ return (modifiers_ & EF_COMMAND_DOWN) != 0;
}
string16 Accelerator::GetShortcutText() const {
@@ -194,6 +198,9 @@ string16 Accelerator::GetShortcutText() const {
else if (IsAltDown())
shortcut = l10n_util::GetStringFUTF16(IDS_APP_ALT_MODIFIER, shortcut);
+ if (IsCmdDown())
+ shortcut = l10n_util::GetStringFUTF16(IDS_APP_COMMAND_MODIFIER, shortcut);
+
// For some reason, menus in Windows ignore standard Unicode directionality
// marks (such as LRE, PDF, etc.). On RTL locales, we use RTL menus and
// therefore any text we draw for the menu items is drawn in an RTL context.
diff --git a/ui/base/accelerators/accelerator.h b/ui/base/accelerators/accelerator.h
index 2f6e169..5e1a488 100644
--- a/ui/base/accelerators/accelerator.h
+++ b/ui/base/accelerators/accelerator.h
@@ -49,6 +49,7 @@ class UI_EXPORT Accelerator {
bool IsShiftDown() const;
bool IsCtrlDown() const;
bool IsAltDown() const;
+ bool IsCmdDown() const;
// Returns a string with the localized shortcut if any.
string16 GetShortcutText() const;
diff --git a/ui/base/strings/ui_strings.grd b/ui/base/strings/ui_strings.grd
index 2dea10b..2c20217 100644
--- a/ui/base/strings/ui_strings.grd
+++ b/ui/base/strings/ui_strings.grd
@@ -360,6 +360,9 @@ need to be translated for each locale.-->
<message name="IDS_APP_SHIFT_MODIFIER" desc="Shift key shortcut modifier">
Shift+<ph name="KEY_COMBO_NAME">$1<ex>C</ex></ph>
</message>
+ <message name="IDS_APP_COMMAND_MODIFIER" desc="Command key shortcut modifier">
+ Command+<ph name="KEY_COMBO_NAME">$1<ex>C</ex></ph>
+ </message>
<!-- Byte size units -->
<message name="IDS_APP_BYTES" desc="Units tag indicating a quantity of bytes">