Add "CommandOrControl" to represent "Command" on OS X and "Ctrl" on other platforms.

This commit is contained in:
Cheng Zhao 2013-11-29 16:10:32 +08:00
parent 13261921a7
commit 8237edcf0d
2 changed files with 10 additions and 1 deletions

View file

@ -109,6 +109,12 @@ bool StringToAccelerator(const std::string& description,
modifiers |= ui::EF_CONTROL_DOWN;
} else if (tokens[i] == "command") {
modifiers |= ui::EF_COMMAND_DOWN;
} else if (tokens[i] == "commandorcontrol" || tokens[i] == "cmdorctrl") {
#if defined(OS_MACOSX)
modifiers |= ui::EF_COMMAND_DOWN;
#else
modifiers |= ui::EF_CONTROL_DOWN;
#endif
} else if (tokens[i] == "alt") {
modifiers |= ui::EF_ALT_DOWN;
} else if (tokens[i] == "shift") {

View file

@ -23,4 +23,7 @@
## Notes on accelerator
On Linux and Windows, the `Command` key would not have any effect.
On Linux and Windows, the `Command` key would not have any effect, you can
use `CommandOrControl` which represents `Command` on OS X and `Control` on
Linux and Windows to define some accelerators, you can also use its short
alias `CmdOrCtrl`.