|
@@ -60,7 +60,11 @@ static const _KeyCodeText _keycodes[] = {
|
|
{KEY_PAGEDOWN ,"PageDown"},
|
|
{KEY_PAGEDOWN ,"PageDown"},
|
|
{KEY_SHIFT ,"Shift"},
|
|
{KEY_SHIFT ,"Shift"},
|
|
{KEY_CONTROL ,"Control"},
|
|
{KEY_CONTROL ,"Control"},
|
|
|
|
+#ifdef OSX_ENABLED
|
|
|
|
+ {KEY_META ,"Command"},
|
|
|
|
+#else
|
|
{KEY_META ,"Meta"},
|
|
{KEY_META ,"Meta"},
|
|
|
|
+#endif
|
|
{KEY_ALT ,"Alt"},
|
|
{KEY_ALT ,"Alt"},
|
|
{KEY_CAPSLOCK ,"CapsLock"},
|
|
{KEY_CAPSLOCK ,"CapsLock"},
|
|
{KEY_NUMLOCK ,"NumLock"},
|
|
{KEY_NUMLOCK ,"NumLock"},
|
|
@@ -390,14 +394,22 @@ bool keycode_has_unicode(uint32_t p_keycode) {
|
|
String keycode_get_string(uint32_t p_code) {
|
|
String keycode_get_string(uint32_t p_code) {
|
|
|
|
|
|
String codestr;
|
|
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;
|
|
p_code &= KEY_CODE_MASK;
|
|
|
|
|
|
@@ -433,6 +445,21 @@ int find_keycode(const String &p_code) {
|
|
return 0;
|
|
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 {
|
|
struct _KeyCodeReplace {
|
|
int from;
|
|
int from;
|
|
int to;
|
|
int to;
|