1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00

Merge pull request #11933 from cxong/master

Use "Command" instead of "Meta" for macOS (#1619)
This commit is contained in:
Juan Linietsky
2017-11-21 14:25:09 -03:00
committed by GitHub
6 changed files with 46 additions and 18 deletions

View File

@@ -60,7 +60,11 @@ static const _KeyCodeText _keycodes[] = {
{KEY_PAGEDOWN ,"PageDown"},
{KEY_SHIFT ,"Shift"},
{KEY_CONTROL ,"Control"},
#ifdef OSX_ENABLED
{KEY_META ,"Command"},
#else
{KEY_META ,"Meta"},
#endif
{KEY_ALT ,"Alt"},
{KEY_CAPSLOCK ,"CapsLock"},
{KEY_NUMLOCK ,"NumLock"},
@@ -390,14 +394,22 @@ bool keycode_has_unicode(uint32_t p_keycode) {
String keycode_get_string(uint32_t p_code) {
String codestr;
if (p_code & KEY_MASK_SHIFT)
codestr += "Shift+";
if (p_code & KEY_MASK_ALT)
codestr += "Alt+";
if (p_code & KEY_MASK_CTRL)
codestr += "Ctrl+";
if (p_code & KEY_MASK_META)
codestr += "Meta+";
if (p_code & KEY_MASK_SHIFT) {
codestr += find_keycode_name(KEY_SHIFT);
codestr += "+";
}
if (p_code & KEY_MASK_ALT) {
codestr += find_keycode_name(KEY_ALT);
codestr += "+";
}
if (p_code & KEY_MASK_CTRL) {
codestr += find_keycode_name(KEY_CONTROL);
codestr += "+";
}
if (p_code & KEY_MASK_META) {
codestr += find_keycode_name(KEY_META);
codestr += "+";
}
p_code &= KEY_CODE_MASK;
@@ -433,6 +445,21 @@ int find_keycode(const String &p_code) {
return 0;
}
const char *find_keycode_name(int p_keycode) {
const _KeyCodeText *kct = &_keycodes[0];
while (kct->text) {
if (kct->code == p_keycode) {
return kct->text;
}
kct++;
}
return "";
}
struct _KeyCodeReplace {
int from;
int to;