This is the result of testing bug #4865. Linux - Google Chrome v34.0.1847.132 ------------------------------------ [1] Right shift and ctrl is sent as left counterparts. [2] Left super is sent as right counterpart (Super_R) and right super is sent with strange keycodes; KeyRelease event, serial 50, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 7812445, (80,92), root:(166,137), state 0x41, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 50, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 7813613, (80,92), root:(166,137), state 0x40, keycode 207 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False [3] Dead key ˇ does not work. [4] No keys on keypad are sent as KP_ keys. [5] Menu key brings up local application context menu, not sent into session even if unbound from gnome-shell. [6] Print Screen not sent into session. [7] Pause is not sent into session. [9] Media keys is handled locally, not sent into session. If I unbound a mediakey X86Tools for example, it is sent into session but as wrong key. local: keycode 179 (keysym 0x1008ff81, XF86Tools) session: keycode 222 (keysym 0xffca, F13) Linux - FireFox v29.0 --------------------- [10] Right shift and ctrl is sent as left counterparts. [11] Left and right super is sent as right super. [12] No dead keys works at all. [13] No keys on keypad are sent as KP_ keys. [14] Print screen is handled locally, not sent into session. If i unbound keyboard shortcut in gnome-shell, wrong keys are sent to server, see following session side events: KeyPress event, serial 37, synthetic NO, window 0x3a00001, root 0xec, subw 0x0, time 364819555, (112,78), root:(177,933), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 37, synthetic NO, window 0x3a00001, root 0xec, subw 0x0, time 364819555, (112,78), root:(177,933), state 0x1, keycode 51 (keysym 0x2a, asterisk), same_screen YES, XLookupString gives 1 bytes: (2a) "*" XmbLookupString gives 1 bytes: (2a) "*" XFilterEvent returns: False KeyRelease event, serial 37, synthetic NO, window 0x3a00001, root 0xec, subw 0x0, time 364819555, (112,78), root:(177,933), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 37, synthetic NO, window 0x3a00001, root 0xec, subw 0x0, time 364819595, (112,78), root:(177,933), state 0x0, keycode 51 (keysym 0x27, apostrophe), same_screen YES, XLookupString gives 1 bytes: (27) "'" XFilterEvent returns: False [15] No media keys are sent into session. Windows - IE11 v11.0.9600.16521 ------------------------------- [16] Right ctrl, shift is sent as left counterpart [17] altgr is sent as (Control_L + Alt_L) [18] right super is sent as (Shift_L + Hyper_L) [19] ǔ, ũ, ç, ů doesn't work at all. I assume this is a side affect of windows sending control+alt instead of altgr. [20] No keys on keypad are sent as KP_ [21] No media keys are sent into session. [22] pause is not sent into session. [23] print screen is not sent into session. Windows - FireFox v29.0 ----------------------- [24] Right ctrl, shift is sent as left counterpart [25] Left and rigth super is both sent as Super_R [26] altgr is sent as (Control_L + Alt_L) [27] No altgr based deadkeys are working, same reason as with IE11 [28] No keys on keypad are sent as KP_ [29] No media keys works except that volume up / down was sent into session but with strange symbols. Volume Up: keycode 178 (keysym 0xb7, periodcentered) Volumer Down: keycode 254 (keysym 0xb6, paragraph) [30] print screen not sent into session. [31] pause not set into session. Windows - Google Chrome v34.0.1847.131 m ---------------------------------------- [32] Right ctrl, shift is sent as left counterpart [33] Left super is sent as Super_R [34] Right super is sent as (Shift_L + Hyper_L) [35] altgr is sent as (Control_L + Alt_L) [36] No altgr based deadkeys are working, same reason as with IE11 [37] No keys on keypad are sent as KP_ keys. [38] No media keys is sent into session. [39] pause is not sent into session. [40] print screen is not sent into session. Mac OS X - FireFox v29.0 ------------------------ [41] Right ctrl, shift, alt (Mac keyboard) is sent as left counterpart. [42] Command key is sent as (Shift_L + Meta_L), ISO_Group_Lock [43] Dead keys are broken in several ways, I couldn't find any that worked at all. If you hit _grave_ you will end up with a capital _agrave_; KeyPress event, serial 82, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 27122545, (138,70), root:(224,115), state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 82, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 27122545, (138,70), root:(224,115), state 0x1, keycode 154 (keysym 0xc0, Agrave), same_screen YES, XLookupString gives 2 bytes: (c3 80) "À" XmbLookupString gives 2 bytes: (c3 80) "À" XFilterEvent returns: False KeyRelease event, serial 82, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 27122545, (138,70), root:(224,115), state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False KeyRelease event, serial 82, synthetic NO, window 0x1000001, root 0xed, subw 0x0, time 27122646, (138,70), root:(224,115), state 0x0, keycode 154 (keysym 0xe0, agrave), same_screen YES, XLookupString gives 2 bytes: (c3 a0) "à" XFilterEvent returns: False [44] Num lock has no effect, neither on mac and pc keyboard. Numbers are always sent. [45] No keys on keypad is sent as KP_ keys. [46] F11, F12, F14 ,F15 (Mac keyboard) is not sent into session. [47] F13 (Mac) is sent as _comma_ into session [48] No media keys are sent into session [49] Print screen (PC) is sent as _comma_ into session, same physical placement as F13 on mac keyboard. [50] Pause not sent into session. [51] Num lock doesn't work at all, locally on mac. Mac OS X - Google Chrome v34.0.1847.131 --------------------------------------- [52] Left / right command sent as (Shift_L + Meta_L) [53] Right shift,ctrl,alt (mac) sent as left counterpart [54] atlgr (PC) sent as Alt_L [55] No dead keys works at all [56] Num lock has no effect, neither on mac and pc keyboard. Numbers are always sent. [57] No keys on keypad is sent as KP_ keys. [58] F11, F12 is captured locally and not sent into session. [59] F14, F16 (Mac) is not sent into session. [60] Menu key (PC) is sent as Shift_L [61] No media keys are sent into session [62] Print screen (PC) is sent as F13, same physical key as F13 key on Mac keyboard. [63] Num lock doesn't work at all, locally on mac. Mac OS X - Safari v7.0.3 ------------------------ [64] Right shift,ctrl,alt (mac) sent as left counterpart [65] Left command key is sent into session as (Shift_L + Meta_L) + Super_R [66] Right command key is sent into session as (Shift_L + Meta_L) + Menu [67] Menu key (PC) is sent as Shift_L [68] alt+space is sent as (Alt_L + nobreakspace) [69] Alt state can be hung within a session pressing the following key sequence on a PC keyboard. No KeyRelease will be sent for Meta_L and the concequenses are that any key sent is modified by alt until alt key is pressed to release the state. The problem is probably in the javascript code. (All browsers) menu (down) -> windows (down) -> menu (up) -> windows (up) [70] No dead keys works at all [71] No keys on keypad is sent as KP_ keys [72] Num lock has no effect, neither on mac and pc keyboard. Numbers are always sent. [73] F11,F12 is captured locally and not sent into session. [74] F14, F15 is not sent into session. [75] menu key (PC) sent as Shift_L [76] No media keys [77] Print Screen sent as F13 (PC) [78] Num lock doesn't work at all, locally on mac. iPad iOS v7.1.1 - Safari - Virtual Keyboard ------------------------------------------- [79] pinyin suggestions are somewhat shown. [80] pinyin several keys are not working; :;().?! [81] swedish input, the kr key is sent as k [82] Media key doesnt work (vol up/down) iPad iOS v7.1.1 - Safari - HW Keyboard (Apple Wireless) ------------------------------------------------------- [83] Failed to produce any char using altgr + 1-9 eg @ [84] ESC is not sent into session. [85] Lost of focus eg. clipboard turns keyboard input off. [86] command, ctrl, alt or shift is not sent into session as their corresponding key, however as example (Shift_L + a) sends a virtual shift key press and produces correctly a uppercase a. [87] ctrl key produces (Shift_L + Meta_L) into session. [88] Pressing another deadkey after an initial deadkey produces a backspace. [89] No dead keys works [90] F1-F12 is not sent into session. [91] No media keys works [92] Caps-lock is sent as Control_L + <key>, sometimes there is no KeyRelease send for key and sometimes no KeyRelease for Control_L iPad iOS v7.1.1 - Chrome v34.0.1847.18 - Virtual Keyboard --------------------------------------------------------- I can't even log in to a session, hangs here and there during loading of resource. Android - Chrome v34.0.1847.114 - Virtual Keyboard -------------------------------------------------- [93] Many symbols are sent into session but no symbol shown for the following symbols; • √ Π ∆ ™ ℅ [94] Suggestions are shown which breaks expected behaviours if used. [95] Pinyin, broken in several ways, cant write any words not even space or enter sends any key presses. [96] Pinyin, 123 keyboard, colon sent but with shift_l [97] Pinyin, symbols not sent into session; ~ … ❝ ❞ [98] No media keys works (Volume Up/Down) Android - FireFox v29.0.1 - Virtual Keyboard -------------------------------------------- [99] Many symbols are sent into session (noname) but no symbol is matched and shown for the following; • √ Π ∆ ™ ℅ [100] Pinyin, ¥ is not sent into session. [101] Pinyin, Parenteses on second screen is sent as backspace and ISO_Left_Tab. [102] Pinyin, There are a lot of symbols sent as noname and some not sent at all into session. [103] No media keys works (Volume Up/Down) Android - Chrome v34.0.1847.114 - Hardware Keyboard (USB) --------------------------------------------------------- [104] Failed to produce any char using altgr + 1-9 eg. no @ [105] Shift got stuck and with no corresponding key release is sent [106] altgr sent as Alt_L [107] Right ctrl, shift sent as corresponding left key [108] left windows key sent as Super_R [109] right windows key sent as (Shift_L + Hyper_L) [110] None of the dead keys are sent into session. [111] Without numlock, no keys are working except for; / * - + keys. [112] With numlock, all keys works except for; enter [113] With numlock, comma is sent as period [114] Menu key is trapped by browser [115] Pause not sent into session [116] Print screen, trapped locally [117] No media keys are working Android - FireFox - Hardware Keyboard (USB) -------------------------------------------- [118] Failed to produce any char using altgr + 1-9 eg. no @ [119] altgr sent as Alt_L [120] Right ctrl, shift, alt sent as left counterpart [121] Both windows keys sent as (Shift_L + Meta_L) [122] Dead key ' send as = into session [123] No dead keys works [124] Without numlock, / * - + and enter works as expected, ther rest of the keys produces wrong symbols (keys 1-9 produces symbols a-i) etc. [125] With numlock, everything works as expected except that comma is sent as period. [126] Menu key is trapped by browser [127] Pause not sent into session [128] Print screen is trapped locally
Created attachment 543 [details] Test report from bug4865
The following points were fixed in bug 5369: [2], [11], [18], [25], [33], [34], [42], [108] and [109]
(In reply to comment #2) > The following points were fixed in bug 5369: > > [2], [11], [18], [25], [33], [34], [42], [108] and [109] Testing shows that [11] and [25] were in fact not resolved. The issue seems to lie in the browser. To clarify: [2] the correct Super is now sent, but the additional strange events are still appearing. [11] Not fixed, no difference [18] Fixed [25] Not fixed, no difference [33] Fixed [34] Fixed [42] ISO_Group_Lock is not sent anymore, Super_L is sent instead, which can be argued to be better in this case. [108] Fixed [109] Fixed I also noticed, regarding [58] that F12 is now sent properly into the session.
Note: It seems like the special solution which was implemented in bug 4602 for the on-screen keyboard on Android isn't used for most keys on Chrome and Firefox anymore. I have not made any thorough tests here but it seems the special solution is used for all non-US characters and for backspace. Normal keyboard events are sent otherwise.
Did keyboard testing for Microsoft Edge on Windows 10, for bug 5642. The results where quite similar but with a few differences compared to IE: Windows 10 - Edge v25.10586.0.0 ------------------------------- [129] Right ctrl is sent as Control_L [130] Right shift is sent as Shift_L [131] altgr is sent as (Control_L + Alt_L) [132] ǔ, ũ, ç, ů doesn't work at all, probably side affect of windows sending control+alt instead of altgr [133] Keypad keys are sent as the normal counterpart, i.e. pressing 1 on the keypad doesn't sent "KP_1", it sends "1" [134] Keypad plus is sent as (Shift_L + plus), however only a keypress is sent for the plus and a keyrelease for equal is sent.. [135] Keypad asterisk is sent as (Shift_L + asterisk), however only a keypress is sent for the asterisk and a keyrelease for 8 is sent.. [136] Media keys are not sent into session [137] Pause is not sent into session [138] Print screen is not sent into session
*** Bug 5838 has been marked as a duplicate of this bug. ***
(In reply to comment #0) > > [123] No dead keys works > I had a look at this and it does not seem to be solvable with the current state of browsers. No event contains information that can allow us to deduce the correct character. It might be possible if we knew the layout, but that information isn't readily available. Bug 4560 might be a way to solve this as Firefox and Chrome have started including information that allows Javascript to deduce the physical key pressed.
The keyboard code got a major rewrite in bug 6152 and many of the issues listed here were fixed. Some still remain though, but see bug 6152 for what's left.
Testing done on bug 6135.