Skip to content

Keyboard input regressions #354

@eigengrau

Description

@eigengrau

Sorry for the generic title, but I’m not quite sure yet how these observations pattern, or what I might have missed upon first inspection. After upgrading to gd5be6d2, I’ve observed the following thus far:

Return key not working

My return-key doesn’t work anymore. I have return mapped into the alphabetic keys (in combination with a modifier). On d5be6d2, the enter key now produces a character in the Unicode private use plane, namely U+10AD13. The xev sequence for return is as follows:

KeyPress event, serial 25, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2373118, (890,460), root:(934,528),
    state 0x0, keycode 108 (keysym 0xfe0c, ISO_First_Group), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 28, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2373414, (890,460), root:(934,528),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
"   XmbLookupString gives 1 bytes: (0d) "
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2373494, (890,460), root:(934,528),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2373774, (890,460), root:(934,528),
    state 0x82, keycode 108 (keysym 0xff7f, Num_Lock), same_screen YES,
    XKeysymToKeycode returns keycode: 94
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 28, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2374686, (890,460), root:(934,528),
    state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

Numblock not working

My numblock is also accessed via the alphabetic keys in combination with a modifier. However, this doesn’t produce any output anymore as of d5be6d2. xev example for the numeral 1 below.

KeyPress event, serial 32, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2444858, (713,570), root:(757,638),
    state 0x0, keycode 94 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
    XKeysymToKeycode returns keycode: 92
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 32, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2445115, (713,570), root:(757,638),
    state 0x0, keycode 87 (keysym 0xffb1, KP_1), same_screen YES,
    XLookupString gives 1 bytes: (31) "1"
    XmbLookupString gives 1 bytes: (31) "1"
    XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2445242, (713,570), root:(757,638),
    state 0x0, keycode 87 (keysym 0xffb1, KP_1), same_screen YES,
    XLookupString gives 1 bytes: (31) "1"
    XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x2600001,
    root 0x49b, subw 0x0, time 2446107, (713,570), root:(757,638),
    state 0x82, keycode 94 (keysym 0xff7f, Num_Lock), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Compose sequences producing more than one character

While compose-sequences which only produce a single character still work, all sequences that produce more than one character don’t produce any output anymore. Can you advise whether this might be an upstream issue? I don’t absolutely need these sequences in rofi, but if this is a problem in libxkbcommon, I might want to tickle them about it.

What still works

At first I was afraid all the extra shift levels might be broken, but most things still appear to work. So, the control key plane mostly works (with exception of the enter key and the numblock), as do the greek/maths and puncuation symbol levels.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions