diff --git a/browser/ui/accelerator_util.cc b/browser/ui/accelerator_util.cc index 1fb89a7e2..b2aadb93a 100644 --- a/browser/ui/accelerator_util.cc +++ b/browser/ui/accelerator_util.cc @@ -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") { diff --git a/docs/api/browser/menu-item.md b/docs/api/browser/menu-item.md index 6ad24d94e..ddf8d13c3 100644 --- a/docs/api/browser/menu-item.md +++ b/docs/api/browser/menu-item.md @@ -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`.