123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- Test protocol for keyboard handling
- ===================================
-
- Platform specific tests/issues are marked with [].
-
- Client
- ------
-
- - Normal symbols:
-
- - ASCII characters
- - Latin 1 character
- - Unicode BMP characters
- - Unicode non-BMP characters
-
- - Dead keys:
-
- - Grave
- - Acute
- - Circumflex
- - Tilde
- - Macron
- - Breve
- - Dot above
- - Diaeresis
- - Ring above
- - Double acute
- - Caron
- - Cedilla
- - Ogonek
- - Ypogegrammeni
- - Katakana voiced mark
- - Katakana semi-voiced mark
- - Dialytika tonos
- - FIXME: Many more that we currently probably don't support
-
- - No composition on client
-
- - Modifiers:
-
- - CapsLock, NumLock (sent but ignored by server)
- - Shift, Ctrl
- - Alt, AltGr, Super [Win, X11] (FIXME: AltGr broken on Win)
- - Left/right identification (FIXME: broken for Shift on Win)
- - CmdL => AltL, CmdR => SuperL, AltL => ModeSwitch, AltR => Level3Shift [Mac]
- - Meta and Hyper sends Super [X11]
-
- - CapsLock, Shift and AltGr affect symbol lookup
- - NumLock affects symbol lookup [Win, X11]
- - Ctrl does not affect symbol lookup
- - Shift inverts NumLock behaviour [X11]
- - Shift turns NumLock off, but not on [Win] (FIXME: fake Shifts also sent)
- - CtrlL+AltR fake release [Win]
- - Ctrl+Alt+any (note behaviour above though)
- - Ctrl+AltGr+any (FIXME: broken on Win)
- - "Shift press, A press, Shift release, A release" should not send "a release"
-
- - Numpad:
-
- - Numpad specific symbols are sent
- - Affected by NumLock
- - Decimal key should send Decimal for layouts with . as a symbol, and
- Separator for layouts with , as a symbol
-
- - Multimedia keys:
-
- - Back, Forward, Refresh, Stop
- - HomePage, Search, Favourites
- - Mail, Calculator
- - Volume up, down, mute
- - Media next, previous, stop, play
- - Sleep
- - FIXME: probably more keys exist
-
- - Non-character keys:
-
- - F1-F24
- - Tab, Space, Backspace, Return
- - LeftTab sends Tab
- - Esc, PrntScrn, ScrollLock, Pause
- - Insert, Delete, Home, End, PageUp, PageDown
- - Arrow keys
- - Menu
- - Alt+PrntScrn sends Sys_Req [Win]
-
- - French layout (AZERTY and inverted shift behaviour for many keys)
-
- - Key repeat should not send repeated release events
-
- - Keys are released on loss of focus
-
- - Local layout changes are respected
-
- - Local input methods are disabled/enabled with focus
-
- - System keys should be grabbed in full screen
-
- The exact keys depends on the system and configuration, but it
- is usually variants of these:
-
- - Alt+Tab
- - Super (and Super+other)
- - Multimedia keys
- - Ctrl+Alt+Delete
- - Ctrl+Esc
- - F8-F12
-
- - Virtual keyboard (as much of the above as is possible)
|