WebKit Bugzilla
Attachment 370837 Details for
Bug 198326
: PlatformEventKeyboardGtk still uses old key aliases
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198326-20190529122105.patch (text/plain), 42.27 KB, created by
Ludovico de Nittis
on 2019-05-29 03:21:06 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Ludovico de Nittis
Created:
2019-05-29 03:21:06 PDT
Size:
42.27 KB
patch
obsolete
>Subversion Revision: 245790 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 5f41fdf2883d539dc16457df626854ff712c80f5..43d51e600c216463941dd93af7655c49010f2e67 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,20 @@ >+2019-05-29 Ludovico de Nittis <ludovico.denittis@collabora.com> >+ >+ PlatformEventKeyboardGtk still uses old key aliases >+ https://bugs.webkit.org/show_bug.cgi?id=198326 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ No behavior change. >+ >+ Use the new key names convention prepending "KEY_". >+ >+ * platform/gtk/PlatformKeyboardEventGtk.cpp: >+ (WebCore::PlatformKeyboardEvent::keyIdentifierForGdkKeyCode): >+ (WebCore::PlatformKeyboardEvent::windowsKeyCodeForGdkKeyCode): >+ (WebCore::PlatformKeyboardEvent::singleCharacterString): >+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): >+ > 2019-05-27 Carlos Garcia Campos <cgarcia@igalia.com> > > Unreviewed. Fix GTK distcheck >diff --git a/Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp b/Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp >index 623d815f251571cc3d030c407e4bdd95b67e7662..2030a862a171ddb5ab92262423898b3621d976bb 100644 >--- a/Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp >+++ b/Source/WebCore/platform/gtk/PlatformKeyboardEventGtk.cpp >@@ -776,520 +776,520 @@ String PlatformKeyboardEvent::keyCodeForHardwareKeyCode(unsigned keyCode) > String PlatformKeyboardEvent::keyIdentifierForGdkKeyCode(unsigned keyCode) > { > switch (keyCode) { >- case GDK_Menu: >- case GDK_Alt_L: >- case GDK_Alt_R: >- return "Alt"; >- case GDK_Clear: >- return "Clear"; >- case GDK_Down: >- return "Down"; >- // "End" >- case GDK_End: >- return "End"; >- // "Enter" >- case GDK_ISO_Enter: >- case GDK_KP_Enter: >- case GDK_Return: >- return "Enter"; >- case GDK_Execute: >- return "Execute"; >- case GDK_F1: >- return "F1"; >- case GDK_F2: >- return "F2"; >- case GDK_F3: >- return "F3"; >- case GDK_F4: >- return "F4"; >- case GDK_F5: >- return "F5"; >- case GDK_F6: >- return "F6"; >- case GDK_F7: >- return "F7"; >- case GDK_F8: >- return "F8"; >- case GDK_F9: >- return "F9"; >- case GDK_F10: >- return "F10"; >- case GDK_F11: >- return "F11"; >- case GDK_F12: >- return "F12"; >- case GDK_F13: >- return "F13"; >- case GDK_F14: >- return "F14"; >- case GDK_F15: >- return "F15"; >- case GDK_F16: >- return "F16"; >- case GDK_F17: >- return "F17"; >- case GDK_F18: >- return "F18"; >- case GDK_F19: >- return "F19"; >- case GDK_F20: >- return "F20"; >- case GDK_F21: >- return "F21"; >- case GDK_F22: >- return "F22"; >- case GDK_F23: >- return "F23"; >- case GDK_F24: >- return "F24"; >- case GDK_Help: >- return "Help"; >- case GDK_Home: >- return "Home"; >- case GDK_Insert: >- return "Insert"; >- case GDK_Left: >- return "Left"; >- case GDK_Page_Down: >- return "PageDown"; >- case GDK_Page_Up: >- return "PageUp"; >- case GDK_Pause: >- return "Pause"; >- case GDK_3270_PrintScreen: >- case GDK_Print: >- return "PrintScreen"; >- case GDK_Right: >- return "Right"; >- case GDK_Select: >- return "Select"; >- case GDK_Up: >- return "Up"; >- // Standard says that DEL becomes U+007F. >- case GDK_Delete: >- return "U+007F"; >- case GDK_BackSpace: >- return "U+0008"; >- case GDK_ISO_Left_Tab: >- case GDK_3270_BackTab: >- case GDK_Tab: >- return "U+0009"; >- default: >- return makeString("U+", hex(gdk_keyval_to_unicode(gdk_keyval_to_upper(keyCode)), 4)); >+ case GDK_KEY_Menu: >+ case GDK_KEY_Alt_L: >+ case GDK_KEY_Alt_R: >+ return "Alt"; >+ case GDK_KEY_Clear: >+ return "Clear"; >+ case GDK_KEY_Down: >+ return "Down"; >+ // "End" >+ case GDK_KEY_End: >+ return "End"; >+ // "Enter" >+ case GDK_KEY_ISO_Enter: >+ case GDK_KEY_KP_Enter: >+ case GDK_KEY_Return: >+ return "Enter"; >+ case GDK_KEY_Execute: >+ return "Execute"; >+ case GDK_KEY_F1: >+ return "F1"; >+ case GDK_KEY_F2: >+ return "F2"; >+ case GDK_KEY_F3: >+ return "F3"; >+ case GDK_KEY_F4: >+ return "F4"; >+ case GDK_KEY_F5: >+ return "F5"; >+ case GDK_KEY_F6: >+ return "F6"; >+ case GDK_KEY_F7: >+ return "F7"; >+ case GDK_KEY_F8: >+ return "F8"; >+ case GDK_KEY_F9: >+ return "F9"; >+ case GDK_KEY_F10: >+ return "F10"; >+ case GDK_KEY_F11: >+ return "F11"; >+ case GDK_KEY_F12: >+ return "F12"; >+ case GDK_KEY_F13: >+ return "F13"; >+ case GDK_KEY_F14: >+ return "F14"; >+ case GDK_KEY_F15: >+ return "F15"; >+ case GDK_KEY_F16: >+ return "F16"; >+ case GDK_KEY_F17: >+ return "F17"; >+ case GDK_KEY_F18: >+ return "F18"; >+ case GDK_KEY_F19: >+ return "F19"; >+ case GDK_KEY_F20: >+ return "F20"; >+ case GDK_KEY_F21: >+ return "F21"; >+ case GDK_KEY_F22: >+ return "F22"; >+ case GDK_KEY_F23: >+ return "F23"; >+ case GDK_KEY_F24: >+ return "F24"; >+ case GDK_KEY_Help: >+ return "Help"; >+ case GDK_KEY_Home: >+ return "Home"; >+ case GDK_KEY_Insert: >+ return "Insert"; >+ case GDK_KEY_Left: >+ return "Left"; >+ case GDK_KEY_Page_Down: >+ return "PageDown"; >+ case GDK_KEY_Page_Up: >+ return "PageUp"; >+ case GDK_KEY_Pause: >+ return "Pause"; >+ case GDK_KEY_3270_PrintScreen: >+ case GDK_KEY_Print: >+ return "PrintScreen"; >+ case GDK_KEY_Right: >+ return "Right"; >+ case GDK_KEY_Select: >+ return "Select"; >+ case GDK_KEY_Up: >+ return "Up"; >+ // Standard says that DEL becomes U+007F. >+ case GDK_KEY_Delete: >+ return "U+007F"; >+ case GDK_KEY_BackSpace: >+ return "U+0008"; >+ case GDK_KEY_ISO_Left_Tab: >+ case GDK_KEY_3270_BackTab: >+ case GDK_KEY_Tab: >+ return "U+0009"; >+ default: >+ return makeString("U+", hex(gdk_keyval_to_unicode(gdk_keyval_to_upper(keyCode)), 4)); > } > } > > int PlatformKeyboardEvent::windowsKeyCodeForGdkKeyCode(unsigned keycode) > { > switch (keycode) { >- case GDK_KEY_Cancel: >- return 0x03; // (03) The Cancel key >- case GDK_KP_0: >- return VK_NUMPAD0;// (60) Numeric keypad 0 key >- case GDK_KP_1: >- return VK_NUMPAD1;// (61) Numeric keypad 1 key >- case GDK_KP_2: >- return VK_NUMPAD2; // (62) Numeric keypad 2 key >- case GDK_KP_3: >- return VK_NUMPAD3; // (63) Numeric keypad 3 key >- case GDK_KP_4: >- return VK_NUMPAD4; // (64) Numeric keypad 4 key >- case GDK_KP_5: >- return VK_NUMPAD5; //(65) Numeric keypad 5 key >- case GDK_KP_6: >- return VK_NUMPAD6; // (66) Numeric keypad 6 key >- case GDK_KP_7: >- return VK_NUMPAD7; // (67) Numeric keypad 7 key >- case GDK_KP_8: >- return VK_NUMPAD8; // (68) Numeric keypad 8 key >- case GDK_KP_9: >- return VK_NUMPAD9; // (69) Numeric keypad 9 key >- case GDK_KP_Multiply: >- return VK_MULTIPLY; // (6A) Multiply key >- case GDK_KP_Add: >- return VK_ADD; // (6B) Add key >- case GDK_KP_Subtract: >- return VK_SUBTRACT; // (6D) Subtract key >- case GDK_KP_Decimal: >- return VK_DECIMAL; // (6E) Decimal key >- case GDK_KP_Divide: >- return VK_DIVIDE; // (6F) Divide key >+ case GDK_KEY_Cancel: >+ return 0x03; // (03) The Cancel key >+ case GDK_KEY_KP_0: >+ return VK_NUMPAD0; // (60) Numeric keypad 0 key >+ case GDK_KEY_KP_1: >+ return VK_NUMPAD1; // (61) Numeric keypad 1 key >+ case GDK_KEY_KP_2: >+ return VK_NUMPAD2; // (62) Numeric keypad 2 key >+ case GDK_KEY_KP_3: >+ return VK_NUMPAD3; // (63) Numeric keypad 3 key >+ case GDK_KEY_KP_4: >+ return VK_NUMPAD4; // (64) Numeric keypad 4 key >+ case GDK_KEY_KP_5: >+ return VK_NUMPAD5; // (65) Numeric keypad 5 key >+ case GDK_KEY_KP_6: >+ return VK_NUMPAD6; // (66) Numeric keypad 6 key >+ case GDK_KEY_KP_7: >+ return VK_NUMPAD7; // (67) Numeric keypad 7 key >+ case GDK_KEY_KP_8: >+ return VK_NUMPAD8; // (68) Numeric keypad 8 key >+ case GDK_KEY_KP_9: >+ return VK_NUMPAD9; // (69) Numeric keypad 9 key >+ case GDK_KEY_KP_Multiply: >+ return VK_MULTIPLY; // (6A) Multiply key >+ case GDK_KEY_KP_Add: >+ return VK_ADD; // (6B) Add key >+ case GDK_KEY_KP_Subtract: >+ return VK_SUBTRACT; // (6D) Subtract key >+ case GDK_KEY_KP_Decimal: >+ return VK_DECIMAL; // (6E) Decimal key >+ case GDK_KEY_KP_Divide: >+ return VK_DIVIDE; // (6F) Divide key > >- case GDK_KP_Page_Up: >- return VK_PRIOR; // (21) PAGE UP key >- case GDK_KP_Page_Down: >- return VK_NEXT; // (22) PAGE DOWN key >- case GDK_KP_End: >- return VK_END; // (23) END key >- case GDK_KP_Home: >- return VK_HOME; // (24) HOME key >- case GDK_KP_Left: >- return VK_LEFT; // (25) LEFT ARROW key >- case GDK_KP_Up: >- return VK_UP; // (26) UP ARROW key >- case GDK_KP_Right: >- return VK_RIGHT; // (27) RIGHT ARROW key >- case GDK_KP_Down: >- return VK_DOWN; // (28) DOWN ARROW key >+ case GDK_KEY_KP_Page_Up: >+ return VK_PRIOR; // (21) PAGE UP key >+ case GDK_KEY_KP_Page_Down: >+ return VK_NEXT; // (22) PAGE DOWN key >+ case GDK_KEY_KP_End: >+ return VK_END; // (23) END key >+ case GDK_KEY_KP_Home: >+ return VK_HOME; // (24) HOME key >+ case GDK_KEY_KP_Left: >+ return VK_LEFT; // (25) LEFT ARROW key >+ case GDK_KEY_KP_Up: >+ return VK_UP; // (26) UP ARROW key >+ case GDK_KEY_KP_Right: >+ return VK_RIGHT; // (27) RIGHT ARROW key >+ case GDK_KEY_KP_Down: >+ return VK_DOWN; // (28) DOWN ARROW key > >- case GDK_BackSpace: >- return VK_BACK; // (08) BACKSPACE key >- case GDK_ISO_Left_Tab: >- case GDK_3270_BackTab: >- case GDK_Tab: >- return VK_TAB; // (09) TAB key >- case GDK_Clear: >- return VK_CLEAR; // (0C) CLEAR key >- case GDK_ISO_Enter: >- case GDK_KP_Enter: >- case GDK_Return: >- return VK_RETURN; //(0D) Return key >+ case GDK_KEY_BackSpace: >+ return VK_BACK; // (08) BACKSPACE key >+ case GDK_KEY_ISO_Left_Tab: >+ case GDK_KEY_3270_BackTab: >+ case GDK_KEY_Tab: >+ return VK_TAB; // (09) TAB key >+ case GDK_KEY_Clear: >+ return VK_CLEAR; // (0C) CLEAR key >+ case GDK_KEY_ISO_Enter: >+ case GDK_KEY_KP_Enter: >+ case GDK_KEY_Return: >+ return VK_RETURN; // (0D) Return key > >- // VK_SHIFT (10) SHIFT key >- // VK_CONTROL (11) CTRL key >+ // VK_SHIFT (10) SHIFT key >+ // VK_CONTROL (11) CTRL key > >- case GDK_Menu: >- return VK_APPS; // (5D) Applications key (Natural keyboard) >+ case GDK_KEY_Menu: >+ return VK_APPS; // (5D) Applications key (Natural keyboard) > >- // VK_MENU (12) ALT key >+ // VK_MENU (12) ALT key > >- case GDK_Pause: >- case GDK_KEY_AudioPause: >- return VK_PAUSE; // (13) PAUSE key >- case GDK_Caps_Lock: >- return VK_CAPITAL; // (14) CAPS LOCK key >- case GDK_Kana_Lock: >- case GDK_Kana_Shift: >- return VK_KANA; // (15) Input Method Editor (IME) Kana mode >- case GDK_Hangul: >- return VK_HANGUL; // VK_HANGUL (15) IME Hangul mode >- // VK_JUNJA (17) IME Junja mode >- // VK_FINAL (18) IME final mode >- case GDK_Hangul_Hanja: >- return VK_HANJA; // (19) IME Hanja mode >- case GDK_Kanji: >- return VK_KANJI; // (19) IME Kanji mode >- case GDK_Escape: >- return VK_ESCAPE; // (1B) ESC key >- // VK_CONVERT (1C) IME convert >- // VK_NONCONVERT (1D) IME nonconvert >- // VK_ACCEPT (1E) IME accept >- // VK_MODECHANGE (1F) IME mode change request >- case GDK_space: >- return VK_SPACE; // (20) SPACEBAR >- case GDK_Page_Up: >- return VK_PRIOR; // (21) PAGE UP key >- case GDK_Page_Down: >- return VK_NEXT; // (22) PAGE DOWN key >- case GDK_End: >- return VK_END; // (23) END key >- case GDK_Home: >- return VK_HOME; // (24) HOME key >- case GDK_Left: >- return VK_LEFT; // (25) LEFT ARROW key >- case GDK_Up: >- return VK_UP; // (26) UP ARROW key >- case GDK_Right: >- return VK_RIGHT; // (27) RIGHT ARROW key >- case GDK_Down: >- return VK_DOWN; // (28) DOWN ARROW key >- case GDK_Select: >- return VK_SELECT; // (29) SELECT key >- case GDK_Print: >- return VK_SNAPSHOT; // (2C) PRINT SCREEN key >- case GDK_Execute: >- return VK_EXECUTE;// (2B) EXECUTE key >- case GDK_Insert: >- case GDK_KP_Insert: >- return VK_INSERT; // (2D) INS key >- case GDK_Delete: >- case GDK_KP_Delete: >- return VK_DELETE; // (2E) DEL key >- case GDK_Help: >- return VK_HELP; // (2F) HELP key >- case GDK_0: >- case GDK_parenright: >- return VK_0; // (30) 0) key >- case GDK_1: >- case GDK_exclam: >- return VK_1; // (31) 1 ! key >- case GDK_2: >- case GDK_at: >- return VK_2; // (32) 2 & key >- case GDK_3: >- case GDK_numbersign: >- return VK_3; //case '3': case '#'; >- case GDK_4: >- case GDK_dollar: // (34) 4 key '$'; >- return VK_4; >- case GDK_5: >- case GDK_percent: >- return VK_5; // (35) 5 key '%' >- case GDK_6: >- case GDK_asciicircum: >- return VK_6; // (36) 6 key '^' >- case GDK_7: >- case GDK_ampersand: >- return VK_7; // (37) 7 key case '&' >- case GDK_8: >- case GDK_asterisk: >- return VK_8; // (38) 8 key '*' >- case GDK_9: >- case GDK_parenleft: >- return VK_9; // (39) 9 key '(' >- case GDK_a: >- case GDK_A: >- return VK_A; // (41) A key case 'a': case 'A': return 0x41; >- case GDK_b: >- case GDK_B: >- return VK_B; // (42) B key case 'b': case 'B': return 0x42; >- case GDK_c: >- case GDK_C: >- return VK_C; // (43) C key case 'c': case 'C': return 0x43; >- case GDK_d: >- case GDK_D: >- return VK_D; // (44) D key case 'd': case 'D': return 0x44; >- case GDK_e: >- case GDK_E: >- return VK_E; // (45) E key case 'e': case 'E': return 0x45; >- case GDK_f: >- case GDK_F: >- return VK_F; // (46) F key case 'f': case 'F': return 0x46; >- case GDK_g: >- case GDK_G: >- return VK_G; // (47) G key case 'g': case 'G': return 0x47; >- case GDK_h: >- case GDK_H: >- return VK_H; // (48) H key case 'h': case 'H': return 0x48; >- case GDK_i: >- case GDK_I: >- return VK_I; // (49) I key case 'i': case 'I': return 0x49; >- case GDK_j: >- case GDK_J: >- return VK_J; // (4A) J key case 'j': case 'J': return 0x4A; >- case GDK_k: >- case GDK_K: >- return VK_K; // (4B) K key case 'k': case 'K': return 0x4B; >- case GDK_l: >- case GDK_L: >- return VK_L; // (4C) L key case 'l': case 'L': return 0x4C; >- case GDK_m: >- case GDK_M: >- return VK_M; // (4D) M key case 'm': case 'M': return 0x4D; >- case GDK_n: >- case GDK_N: >- return VK_N; // (4E) N key case 'n': case 'N': return 0x4E; >- case GDK_o: >- case GDK_O: >- return VK_O; // (4F) O key case 'o': case 'O': return 0x4F; >- case GDK_p: >- case GDK_P: >- return VK_P; // (50) P key case 'p': case 'P': return 0x50; >- case GDK_q: >- case GDK_Q: >- return VK_Q; // (51) Q key case 'q': case 'Q': return 0x51; >- case GDK_r: >- case GDK_R: >- return VK_R; // (52) R key case 'r': case 'R': return 0x52; >- case GDK_s: >- case GDK_S: >- return VK_S; // (53) S key case 's': case 'S': return 0x53; >- case GDK_t: >- case GDK_T: >- return VK_T; // (54) T key case 't': case 'T': return 0x54; >- case GDK_u: >- case GDK_U: >- return VK_U; // (55) U key case 'u': case 'U': return 0x55; >- case GDK_v: >- case GDK_V: >- return VK_V; // (56) V key case 'v': case 'V': return 0x56; >- case GDK_w: >- case GDK_W: >- return VK_W; // (57) W key case 'w': case 'W': return 0x57; >- case GDK_x: >- case GDK_X: >- return VK_X; // (58) X key case 'x': case 'X': return 0x58; >- case GDK_y: >- case GDK_Y: >- return VK_Y; // (59) Y key case 'y': case 'Y': return 0x59; >- case GDK_z: >- case GDK_Z: >- return VK_Z; // (5A) Z key case 'z': case 'Z': return 0x5A; >- case GDK_Meta_L: >- return VK_LWIN; // (5B) Left Windows key (Microsoft Natural keyboard) >- case GDK_Meta_R: >- return VK_RWIN; // (5C) Right Windows key (Natural keyboard) >- case GDK_KEY_Sleep: >- return VK_SLEEP; // (5F) Computer Sleep key >- // VK_SEPARATOR (6C) Separator key >- // VK_SUBTRACT (6D) Subtract key >- // VK_DECIMAL (6E) Decimal key >- // VK_DIVIDE (6F) Divide key >- // handled by key code above >+ case GDK_KEY_Pause: >+ case GDK_KEY_AudioPause: >+ return VK_PAUSE; // (13) PAUSE key >+ case GDK_KEY_Caps_Lock: >+ return VK_CAPITAL; // (14) CAPS LOCK key >+ case GDK_KEY_Kana_Lock: >+ case GDK_KEY_Kana_Shift: >+ return VK_KANA; // (15) Input Method Editor (IME) Kana mode >+ case GDK_KEY_Hangul: >+ return VK_HANGUL; // VK_HANGUL (15) IME Hangul mode >+ // VK_JUNJA (17) IME Junja mode >+ // VK_FINAL (18) IME final mode >+ case GDK_KEY_Hangul_Hanja: >+ return VK_HANJA; // (19) IME Hanja mode >+ case GDK_KEY_Kanji: >+ return VK_KANJI; // (19) IME Kanji mode >+ case GDK_KEY_Escape: >+ return VK_ESCAPE; // (1B) ESC key >+ // VK_CONVERT (1C) IME convert >+ // VK_NONCONVERT (1D) IME nonconvert >+ // VK_ACCEPT (1E) IME accept >+ // VK_MODECHANGE (1F) IME mode change request >+ case GDK_KEY_space: >+ return VK_SPACE; // (20) SPACEBAR >+ case GDK_KEY_Page_Up: >+ return VK_PRIOR; // (21) PAGE UP key >+ case GDK_KEY_Page_Down: >+ return VK_NEXT; // (22) PAGE DOWN key >+ case GDK_KEY_End: >+ return VK_END; // (23) END key >+ case GDK_KEY_Home: >+ return VK_HOME; // (24) HOME key >+ case GDK_KEY_Left: >+ return VK_LEFT; // (25) LEFT ARROW key >+ case GDK_KEY_Up: >+ return VK_UP; // (26) UP ARROW key >+ case GDK_KEY_Right: >+ return VK_RIGHT; // (27) RIGHT ARROW key >+ case GDK_KEY_Down: >+ return VK_DOWN; // (28) DOWN ARROW key >+ case GDK_KEY_Select: >+ return VK_SELECT; // (29) SELECT key >+ case GDK_KEY_Print: >+ return VK_SNAPSHOT; // (2C) PRINT SCREEN key >+ case GDK_KEY_Execute: >+ return VK_EXECUTE; // (2B) EXECUTE key >+ case GDK_KEY_Insert: >+ case GDK_KEY_KP_Insert: >+ return VK_INSERT; // (2D) INS key >+ case GDK_KEY_Delete: >+ case GDK_KEY_KP_Delete: >+ return VK_DELETE; // (2E) DEL key >+ case GDK_KEY_Help: >+ return VK_HELP; // (2F) HELP key >+ case GDK_KEY_0: >+ case GDK_KEY_parenright: >+ return VK_0; // (30) 0) key >+ case GDK_KEY_1: >+ case GDK_KEY_exclam: >+ return VK_1; // (31) 1 ! key >+ case GDK_KEY_2: >+ case GDK_KEY_at: >+ return VK_2; // (32) 2 & key >+ case GDK_KEY_3: >+ case GDK_KEY_numbersign: >+ return VK_3; // case '3': case '#'; >+ case GDK_KEY_4: >+ case GDK_KEY_dollar: // (34) 4 key '$'; >+ return VK_4; >+ case GDK_KEY_5: >+ case GDK_KEY_percent: >+ return VK_5; // (35) 5 key '%' >+ case GDK_KEY_6: >+ case GDK_KEY_asciicircum: >+ return VK_6; // (36) 6 key '^' >+ case GDK_KEY_7: >+ case GDK_KEY_ampersand: >+ return VK_7; // (37) 7 key case '&' >+ case GDK_KEY_8: >+ case GDK_KEY_asterisk: >+ return VK_8; // (38) 8 key '*' >+ case GDK_KEY_9: >+ case GDK_KEY_parenleft: >+ return VK_9; // (39) 9 key '(' >+ case GDK_KEY_a: >+ case GDK_KEY_A: >+ return VK_A; // (41) A key case 'a': case 'A': return 0x41; >+ case GDK_KEY_b: >+ case GDK_KEY_B: >+ return VK_B; // (42) B key case 'b': case 'B': return 0x42; >+ case GDK_KEY_c: >+ case GDK_KEY_C: >+ return VK_C; // (43) C key case 'c': case 'C': return 0x43; >+ case GDK_KEY_d: >+ case GDK_KEY_D: >+ return VK_D; // (44) D key case 'd': case 'D': return 0x44; >+ case GDK_KEY_e: >+ case GDK_KEY_E: >+ return VK_E; // (45) E key case 'e': case 'E': return 0x45; >+ case GDK_KEY_f: >+ case GDK_KEY_F: >+ return VK_F; // (46) F key case 'f': case 'F': return 0x46; >+ case GDK_KEY_g: >+ case GDK_KEY_G: >+ return VK_G; // (47) G key case 'g': case 'G': return 0x47; >+ case GDK_KEY_h: >+ case GDK_KEY_H: >+ return VK_H; // (48) H key case 'h': case 'H': return 0x48; >+ case GDK_KEY_i: >+ case GDK_KEY_I: >+ return VK_I; // (49) I key case 'i': case 'I': return 0x49; >+ case GDK_KEY_j: >+ case GDK_KEY_J: >+ return VK_J; // (4A) J key case 'j': case 'J': return 0x4A; >+ case GDK_KEY_k: >+ case GDK_KEY_K: >+ return VK_K; // (4B) K key case 'k': case 'K': return 0x4B; >+ case GDK_KEY_l: >+ case GDK_KEY_L: >+ return VK_L; // (4C) L key case 'l': case 'L': return 0x4C; >+ case GDK_KEY_m: >+ case GDK_KEY_M: >+ return VK_M; // (4D) M key case 'm': case 'M': return 0x4D; >+ case GDK_KEY_n: >+ case GDK_KEY_N: >+ return VK_N; // (4E) N key case 'n': case 'N': return 0x4E; >+ case GDK_KEY_o: >+ case GDK_KEY_O: >+ return VK_O; // (4F) O key case 'o': case 'O': return 0x4F; >+ case GDK_KEY_p: >+ case GDK_KEY_P: >+ return VK_P; // (50) P key case 'p': case 'P': return 0x50; >+ case GDK_KEY_q: >+ case GDK_KEY_Q: >+ return VK_Q; // (51) Q key case 'q': case 'Q': return 0x51; >+ case GDK_KEY_r: >+ case GDK_KEY_R: >+ return VK_R; // (52) R key case 'r': case 'R': return 0x52; >+ case GDK_KEY_s: >+ case GDK_KEY_S: >+ return VK_S; // (53) S key case 's': case 'S': return 0x53; >+ case GDK_KEY_t: >+ case GDK_KEY_T: >+ return VK_T; // (54) T key case 't': case 'T': return 0x54; >+ case GDK_KEY_u: >+ case GDK_KEY_U: >+ return VK_U; // (55) U key case 'u': case 'U': return 0x55; >+ case GDK_KEY_v: >+ case GDK_KEY_V: >+ return VK_V; // (56) V key case 'v': case 'V': return 0x56; >+ case GDK_KEY_w: >+ case GDK_KEY_W: >+ return VK_W; // (57) W key case 'w': case 'W': return 0x57; >+ case GDK_KEY_x: >+ case GDK_KEY_X: >+ return VK_X; // (58) X key case 'x': case 'X': return 0x58; >+ case GDK_KEY_y: >+ case GDK_KEY_Y: >+ return VK_Y; // (59) Y key case 'y': case 'Y': return 0x59; >+ case GDK_KEY_z: >+ case GDK_KEY_Z: >+ return VK_Z; // (5A) Z key case 'z': case 'Z': return 0x5A; >+ case GDK_KEY_Meta_L: >+ return VK_LWIN; // (5B) Left Windows key (Microsoft Natural keyboard) >+ case GDK_KEY_Meta_R: >+ return VK_RWIN; // (5C) Right Windows key (Natural keyboard) >+ case GDK_KEY_Sleep: >+ return VK_SLEEP; // (5F) Computer Sleep key >+ // VK_SEPARATOR (6C) Separator key >+ // VK_SUBTRACT (6D) Subtract key >+ // VK_DECIMAL (6E) Decimal key >+ // VK_DIVIDE (6F) Divide key >+ // handled by key code above > >- case GDK_Num_Lock: >- return VK_NUMLOCK; // (90) NUM LOCK key >+ case GDK_KEY_Num_Lock: >+ return VK_NUMLOCK; // (90) NUM LOCK key > >- case GDK_Scroll_Lock: >- return VK_SCROLL; // (91) SCROLL LOCK key >+ case GDK_KEY_Scroll_Lock: >+ return VK_SCROLL; // (91) SCROLL LOCK key > >- case GDK_Shift_L: >- return VK_LSHIFT; // (A0) Left SHIFT key >- case GDK_Shift_R: >- return VK_RSHIFT; // (A1) Right SHIFT key >- case GDK_Control_L: >- return VK_LCONTROL; // (A2) Left CONTROL key >- case GDK_Control_R: >- return VK_RCONTROL; // (A3) Right CONTROL key >- case GDK_Alt_L: >- return VK_LMENU; // (A4) Left MENU key >- case GDK_Alt_R: >- return VK_RMENU; // (A5) Right MENU key >+ case GDK_KEY_Shift_L: >+ return VK_LSHIFT; // (A0) Left SHIFT key >+ case GDK_KEY_Shift_R: >+ return VK_RSHIFT; // (A1) Right SHIFT key >+ case GDK_KEY_Control_L: >+ return VK_LCONTROL; // (A2) Left CONTROL key >+ case GDK_KEY_Control_R: >+ return VK_RCONTROL; // (A3) Right CONTROL key >+ case GDK_KEY_Alt_L: >+ return VK_LMENU; // (A4) Left MENU key >+ case GDK_KEY_Alt_R: >+ return VK_RMENU; // (A5) Right MENU key > >- case GDK_KEY_Back: >- return VK_BROWSER_BACK; // VK_BROWSER_BACK (A6) Windows 2000/XP: Browser Back key >- case GDK_KEY_Forward: >- return VK_BROWSER_FORWARD; // (A7) Windows 2000/XP: Browser Forward key >- case GDK_KEY_Refresh: >- return VK_BROWSER_REFRESH; // (A8) Windows 2000/XP: Browser Refresh key >- case GDK_KEY_Stop: >- return VK_BROWSER_STOP; // (A9) Windows 2000/XP: Browser Stop key >- case GDK_KEY_Search: >- return VK_BROWSER_SEARCH; // (AA) Windows 2000/XP: Browser Search key >- case GDK_KEY_Favorites: >- return VK_BROWSER_FAVORITES; // (AB) Windows 2000/XP: Browser Favorites key >- case GDK_KEY_HomePage: >- return VK_BROWSER_HOME; // (AC) Windows 2000/XP: Browser Start and Home key >- case GDK_KEY_AudioMute: >- return VK_VOLUME_MUTE; // (AD) Windows 2000/XP: Volume Mute key >- case GDK_KEY_AudioLowerVolume: >- return VK_VOLUME_DOWN; // (AE) Windows 2000/XP: Volume Down key >- case GDK_KEY_AudioRaiseVolume: >- return VK_VOLUME_UP; // (AF) Windows 2000/XP: Volume Up key >- case GDK_KEY_AudioNext: >- return VK_MEDIA_NEXT_TRACK; // (B0) Windows 2000/XP: Next Track key >- case GDK_KEY_AudioPrev: >- return VK_MEDIA_PREV_TRACK; // (B1) Windows 2000/XP: Previous Track key >- case GDK_KEY_AudioStop: >- return VK_MEDIA_STOP; // (B2) Windows 2000/XP: Stop Media key >- // VK_MEDIA_PLAY_PAUSE (B3) Windows 2000/XP: Play/Pause Media key >- // VK_LAUNCH_MAIL (B4) Windows 2000/XP: Start Mail key >- case GDK_KEY_AudioMedia: >- return VK_MEDIA_LAUNCH_MEDIA_SELECT; // (B5) Windows 2000/XP: Select Media key >- // VK_LAUNCH_APP1 (B6) Windows 2000/XP: Start Application 1 key >- // VK_LAUNCH_APP2 (B7) Windows 2000/XP: Start Application 2 key >+ case GDK_KEY_Back: >+ return VK_BROWSER_BACK; // VK_BROWSER_BACK (A6) Windows 2000/XP: Browser Back key >+ case GDK_KEY_Forward: >+ return VK_BROWSER_FORWARD; // (A7) Windows 2000/XP: Browser Forward key >+ case GDK_KEY_Refresh: >+ return VK_BROWSER_REFRESH; // (A8) Windows 2000/XP: Browser Refresh key >+ case GDK_KEY_Stop: >+ return VK_BROWSER_STOP; // (A9) Windows 2000/XP: Browser Stop key >+ case GDK_KEY_Search: >+ return VK_BROWSER_SEARCH; // (AA) Windows 2000/XP: Browser Search key >+ case GDK_KEY_Favorites: >+ return VK_BROWSER_FAVORITES; // (AB) Windows 2000/XP: Browser Favorites key >+ case GDK_KEY_HomePage: >+ return VK_BROWSER_HOME; // (AC) Windows 2000/XP: Browser Start and Home key >+ case GDK_KEY_AudioMute: >+ return VK_VOLUME_MUTE; // (AD) Windows 2000/XP: Volume Mute key >+ case GDK_KEY_AudioLowerVolume: >+ return VK_VOLUME_DOWN; // (AE) Windows 2000/XP: Volume Down key >+ case GDK_KEY_AudioRaiseVolume: >+ return VK_VOLUME_UP; // (AF) Windows 2000/XP: Volume Up key >+ case GDK_KEY_AudioNext: >+ return VK_MEDIA_NEXT_TRACK; // (B0) Windows 2000/XP: Next Track key >+ case GDK_KEY_AudioPrev: >+ return VK_MEDIA_PREV_TRACK; // (B1) Windows 2000/XP: Previous Track key >+ case GDK_KEY_AudioStop: >+ return VK_MEDIA_STOP; // (B2) Windows 2000/XP: Stop Media key >+ // VK_MEDIA_PLAY_PAUSE (B3) Windows 2000/XP: Play/Pause Media key >+ // VK_LAUNCH_MAIL (B4) Windows 2000/XP: Start Mail key >+ case GDK_KEY_AudioMedia: >+ return VK_MEDIA_LAUNCH_MEDIA_SELECT; // (B5) Windows 2000/XP: Select Media key >+ // VK_LAUNCH_APP1 (B6) Windows 2000/XP: Start Application 1 key >+ // VK_LAUNCH_APP2 (B7) Windows 2000/XP: Start Application 2 key > >- // VK_OEM_1 (BA) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the ';:' key >- case GDK_semicolon: >- case GDK_colon: >- return VK_OEM_1; //case ';': case ':': return 0xBA; >- // VK_OEM_PLUS (BB) Windows 2000/XP: For any country/region, the '+' key >- case GDK_plus: >- case GDK_equal: >- return VK_OEM_PLUS; //case '=': case '+': return 0xBB; >- // VK_OEM_COMMA (BC) Windows 2000/XP: For any country/region, the ',' key >- case GDK_comma: >- case GDK_less: >- return VK_OEM_COMMA; //case ',': case '<': return 0xBC; >- // VK_OEM_MINUS (BD) Windows 2000/XP: For any country/region, the '-' key >- case GDK_minus: >- case GDK_underscore: >- return VK_OEM_MINUS; //case '-': case '_': return 0xBD; >- // VK_OEM_PERIOD (BE) Windows 2000/XP: For any country/region, the '.' key >- case GDK_period: >- case GDK_greater: >- return VK_OEM_PERIOD; //case '.': case '>': return 0xBE; >- // VK_OEM_2 (BF) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '/?' key >- case GDK_slash: >- case GDK_question: >- return VK_OEM_2; //case '/': case '?': return 0xBF; >- // VK_OEM_3 (C0) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '`~' key >- case GDK_asciitilde: >- case GDK_quoteleft: >- return VK_OEM_3; //case '`': case '~': return 0xC0; >- // VK_OEM_4 (DB) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '[{' key >- case GDK_bracketleft: >- case GDK_braceleft: >- return VK_OEM_4; //case '[': case '{': return 0xDB; >- // VK_OEM_5 (DC) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '\|' key >- case GDK_backslash: >- case GDK_bar: >- return VK_OEM_5; //case '\\': case '|': return 0xDC; >- // VK_OEM_6 (DD) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the ']}' key >- case GDK_bracketright: >- case GDK_braceright: >- return VK_OEM_6; // case ']': case '}': return 0xDD; >- // VK_OEM_7 (DE) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the 'single-quote/double-quote' key >- case GDK_quoteright: >- case GDK_quotedbl: >- return VK_OEM_7; // case '\'': case '"': return 0xDE; >- // VK_OEM_8 (DF) Used for miscellaneous characters; it can vary by keyboard. >- // VK_OEM_102 (E2) Windows 2000/XP: Either the angle bracket key or the backslash key on the RT 102-key keyboard >- case GDK_KEY_AudioRewind: >- return 0xE3; // (E3) Android/GoogleTV: Rewind media key (Windows: VK_ICO_HELP Help key on 1984 Olivetti M24 deluxe keyboard) >- case GDK_KEY_AudioForward: >- return 0xE4; // (E4) Android/GoogleTV: Fast forward media key (Windows: VK_ICO_00 '00' key on 1984 Olivetti M24 deluxe keyboard) >- // VK_PROCESSKEY (E5) Windows 95/98/Me, Windows NT 4.0, Windows 2000/XP: IME PROCESS key >- // VK_PACKET (E7) Windows 2000/XP: Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT,SendInput, WM_KEYDOWN, and WM_KEYUP >- // VK_ATTN (F6) Attn key >- // VK_CRSEL (F7) CrSel key >- // VK_EXSEL (F8) ExSel key >- // VK_EREOF (F9) Erase EOF key >- case GDK_KEY_AudioPlay: >- return VK_PLAY; // VK_PLAY (FA) Play key >- // VK_ZOOM (FB) Zoom key >- // VK_NONAME (FC) Reserved for future use >- // VK_PA1 (FD) PA1 key >- // VK_OEM_CLEAR (FE) Clear key >- case GDK_F1: >- case GDK_F2: >- case GDK_F3: >- case GDK_F4: >- case GDK_F5: >- case GDK_F6: >- case GDK_F7: >- case GDK_F8: >- case GDK_F9: >- case GDK_F10: >- case GDK_F11: >- case GDK_F12: >- case GDK_F13: >- case GDK_F14: >- case GDK_F15: >- case GDK_F16: >- case GDK_F17: >- case GDK_F18: >- case GDK_F19: >- case GDK_F20: >- case GDK_F21: >- case GDK_F22: >- case GDK_F23: >- case GDK_F24: >- return VK_F1 + (keycode - GDK_F1); >- case GDK_KEY_VoidSymbol: >- return VK_PROCESSKEY; >+ // VK_OEM_1 (BA) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the ';:' key >+ case GDK_KEY_semicolon: >+ case GDK_KEY_colon: >+ return VK_OEM_1; // case ';': case ':': return 0xBA; >+ // VK_OEM_PLUS (BB) Windows 2000/XP: For any country/region, the '+' key >+ case GDK_KEY_plus: >+ case GDK_KEY_equal: >+ return VK_OEM_PLUS; // case '=': case '+': return 0xBB; >+ // VK_OEM_COMMA (BC) Windows 2000/XP: For any country/region, the ',' key >+ case GDK_KEY_comma: >+ case GDK_KEY_less: >+ return VK_OEM_COMMA; // case ',': case '<': return 0xBC; >+ // VK_OEM_MINUS (BD) Windows 2000/XP: For any country/region, the '-' key >+ case GDK_KEY_minus: >+ case GDK_KEY_underscore: >+ return VK_OEM_MINUS; // case '-': case '_': return 0xBD; >+ // VK_OEM_PERIOD (BE) Windows 2000/XP: For any country/region, the '.' key >+ case GDK_KEY_period: >+ case GDK_KEY_greater: >+ return VK_OEM_PERIOD; // case '.': case '>': return 0xBE; >+ // VK_OEM_2 (BF) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '/?' key >+ case GDK_KEY_slash: >+ case GDK_KEY_question: >+ return VK_OEM_2; // case '/': case '?': return 0xBF; >+ // VK_OEM_3 (C0) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '`~' key >+ case GDK_KEY_asciitilde: >+ case GDK_KEY_quoteleft: >+ return VK_OEM_3; // case '`': case '~': return 0xC0; >+ // VK_OEM_4 (DB) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '[{' key >+ case GDK_KEY_bracketleft: >+ case GDK_KEY_braceleft: >+ return VK_OEM_4; // case '[': case '{': return 0xDB; >+ // VK_OEM_5 (DC) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the '\|' key >+ case GDK_KEY_backslash: >+ case GDK_KEY_bar: >+ return VK_OEM_5; // case '\\': case '|': return 0xDC; >+ // VK_OEM_6 (DD) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the ']}' key >+ case GDK_KEY_bracketright: >+ case GDK_KEY_braceright: >+ return VK_OEM_6; // case ']': case '}': return 0xDD; >+ // VK_OEM_7 (DE) Used for miscellaneous characters; it can vary by keyboard. Windows 2000/XP: For the US standard keyboard, the 'single-quote/double-quote' key >+ case GDK_KEY_quoteright: >+ case GDK_KEY_quotedbl: >+ return VK_OEM_7; // case '\'': case '"': return 0xDE; >+ // VK_OEM_8 (DF) Used for miscellaneous characters; it can vary by keyboard. >+ // VK_OEM_102 (E2) Windows 2000/XP: Either the angle bracket key or the backslash key on the RT 102-key keyboard >+ case GDK_KEY_AudioRewind: >+ return 0xE3; // (E3) Android/GoogleTV: Rewind media key (Windows: VK_ICO_HELP Help key on 1984 Olivetti M24 deluxe keyboard) >+ case GDK_KEY_AudioForward: >+ return 0xE4; // (E4) Android/GoogleTV: Fast forward media key (Windows: VK_ICO_00 '00' key on 1984 Olivetti M24 deluxe keyboard) >+ // VK_PROCESSKEY (E5) Windows 95/98/Me, Windows NT 4.0, Windows 2000/XP: IME PROCESS key >+ // VK_PACKET (E7) Windows 2000/XP: Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT,SendInput, WM_KEYDOWN, and WM_KEYUP >+ // VK_ATTN (F6) Attn key >+ // VK_CRSEL (F7) CrSel key >+ // VK_EXSEL (F8) ExSel key >+ // VK_EREOF (F9) Erase EOF key >+ case GDK_KEY_AudioPlay: >+ return VK_PLAY; // VK_PLAY (FA) Play key >+ // VK_ZOOM (FB) Zoom key >+ // VK_NONAME (FC) Reserved for future use >+ // VK_PA1 (FD) PA1 key >+ // VK_OEM_CLEAR (FE) Clear key >+ case GDK_KEY_F1: >+ case GDK_KEY_F2: >+ case GDK_KEY_F3: >+ case GDK_KEY_F4: >+ case GDK_KEY_F5: >+ case GDK_KEY_F6: >+ case GDK_KEY_F7: >+ case GDK_KEY_F8: >+ case GDK_KEY_F9: >+ case GDK_KEY_F10: >+ case GDK_KEY_F11: >+ case GDK_KEY_F12: >+ case GDK_KEY_F13: >+ case GDK_KEY_F14: >+ case GDK_KEY_F15: >+ case GDK_KEY_F16: >+ case GDK_KEY_F17: >+ case GDK_KEY_F18: >+ case GDK_KEY_F19: >+ case GDK_KEY_F20: >+ case GDK_KEY_F21: >+ case GDK_KEY_F22: >+ case GDK_KEY_F23: >+ case GDK_KEY_F24: >+ return VK_F1 + (keycode - GDK_KEY_F1); >+ case GDK_KEY_VoidSymbol: >+ return VK_PROCESSKEY; > >- // TV keycodes from DASE / OCAP / CE-HTML standards. >- case GDK_KEY_Red: >- return 0x193; // General purpose color-coded media function key, as index 0 (red) >- case GDK_KEY_Green: >- return 0x194; // General purpose color-coded media function key, as index 1 (green) >- case GDK_KEY_Yellow: >- return 0x195; // General purpose color-coded media function key, as index 2 (yellow) >- case GDK_KEY_Blue: >- return 0x196; // General purpose color-coded media function key, as index 3 (blue) >- case GDK_KEY_PowerOff: >- return 0x199; // Toggle power state >- case GDK_KEY_AudioRecord: >- return 0x1A0; // Initiate or resume recording of currently selected media >- case GDK_KEY_Display: >- return 0x1BC; // Swap video sources >- case GDK_KEY_Subtitle: >- return 0x1CC; // Toggle display of subtitles, if available >- case GDK_KEY_Video: >- return 0x26F; // Access on-demand content or programs >- default: >- return 0; >+ // TV keycodes from DASE / OCAP / CE-HTML standards. >+ case GDK_KEY_Red: >+ return 0x193; // General purpose color-coded media function key, as index 0 (red) >+ case GDK_KEY_Green: >+ return 0x194; // General purpose color-coded media function key, as index 1 (green) >+ case GDK_KEY_Yellow: >+ return 0x195; // General purpose color-coded media function key, as index 2 (yellow) >+ case GDK_KEY_Blue: >+ return 0x196; // General purpose color-coded media function key, as index 3 (blue) >+ case GDK_KEY_PowerOff: >+ return 0x199; // Toggle power state >+ case GDK_KEY_AudioRecord: >+ return 0x1A0; // Initiate or resume recording of currently selected media >+ case GDK_KEY_Display: >+ return 0x1BC; // Swap video sources >+ case GDK_KEY_Subtitle: >+ return 0x1CC; // Toggle display of subtitles, if available >+ case GDK_KEY_Video: >+ return 0x26F; // Access on-demand content or programs >+ default: >+ return 0; > } > > } >@@ -1297,28 +1297,28 @@ int PlatformKeyboardEvent::windowsKeyCodeForGdkKeyCode(unsigned keycode) > String PlatformKeyboardEvent::singleCharacterString(unsigned val) > { > switch (val) { >- case GDK_ISO_Enter: >- case GDK_KP_Enter: >- case GDK_Return: >- return String("\r"); >- case GDK_BackSpace: >- return String("\x8"); >- case GDK_Tab: >- return String("\t"); >- default: >- gunichar c = gdk_keyval_to_unicode(val); >- glong nwc; >- gunichar2* uchar16 = g_ucs4_to_utf16(&c, 1, 0, &nwc, 0); >+ case GDK_KEY_ISO_Enter: >+ case GDK_KEY_KP_Enter: >+ case GDK_KEY_Return: >+ return String("\r"); >+ case GDK_KEY_BackSpace: >+ return String("\x8"); >+ case GDK_KEY_Tab: >+ return String("\t"); >+ default: >+ gunichar c = gdk_keyval_to_unicode(val); >+ glong nwc; >+ gunichar2* uchar16 = g_ucs4_to_utf16(&c, 1, 0, &nwc, 0); > >- String retVal; >- if (uchar16) >- retVal = String((UChar*)uchar16, nwc); >- else >- retVal = String(); >+ String retVal; >+ if (uchar16) >+ retVal = String((UChar*)uchar16, nwc); >+ else >+ retVal = String(); > >- g_free(uchar16); >+ g_free(uchar16); > >- return retVal; >+ return retVal; > } > } > >@@ -1354,7 +1354,7 @@ PlatformKeyboardEvent::PlatformKeyboardEvent(GdkEventKey* event, const Compositi > , m_windowsVirtualKeyCode(windowsKeyCodeForGdkKeyCode(event->keyval)) > , m_handledByInputMethod(false) > , m_autoRepeat(false) >- , m_isKeypad(event->keyval >= GDK_KP_Space && event->keyval <= GDK_KP_9) >+ , m_isKeypad(event->keyval >= GDK_KEY_KP_Space && event->keyval <= GDK_KEY_KP_9) > , m_isSystemKey(false) > , m_gdkEventKey(event) > , m_compositionResults(compositionResults)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198326
:
370836
| 370837