fvwmorg/fvwm3

Modifiers keys not swallowed correctly.

Closed this issue · 1 comments

Upfront Information

  • Fvwm3 version (run: fvwm3 --version)
    fvwm3 1.0.6 (1.0.5-52-gad8e4a0d) with support for: ReadLine, XPM, PNG, SVG, Shape, XShm, SM, Bidi text, XRandR, XRender, XCursor, XFT, NLS

  • Linux distribution or BSD name/version
    Arch Linux

  • Platform (run: uname -sp)
    Linux unknown
    ... Linux 6.1.0-zen1-1-zen #1 ZEN SMP PREEMPT_DYNAMIC x86_64 GNU/Linux

Expected Behaviour

Fvwm should "swallow" keypresses (releases?) correctly if it has configured keybinding and do not pass to clients.
Specified issue above cannot be reproduced under Gnome (X11), Openbox, however tried to test thoroughly.

Actual Behaviour

I face a weird issue with fvwm3.
Given the following keybinding, modmap:

Test (x $[infostore.runcmd]) Key (*) a A 4 Exec exec $[infostore.runcmd] $[infostore.runcmdopt]

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock      
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3        Hyper_R (0x42)
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

Super_L+a key combo brings up rofi, in this case. Right after(!) rofi exits, Super_L key (mod4) passed to active window/client.
In my case active window is citrix workspace app (wfica). So that the Windows explorer (inside wfcia) brings up its own startmenu. This means, wfica got information on Super_L keypress, however fvwm should process and consume/swallow this as per keybinding above.

Enabling logging

[1671447074.292454]  log opened (because of SIGUSR2)
[1671447082.847900] setup_window_placement: Expanding screen from 'null' -> ''
[1671447086.810663]  log closed (because of SIGUSR2)
[1671447210.010957]  log opened (because of SIGUSR2)
[1671447218.935123] setup_window_placement: Expanding screen from 'null' -> ''
[1671447229.251395]  log closed (because of SIGUSR2)

Steps to Reproduce

This problem can be hard to reproduce, since I only faced this issue under wfica, but I assume other client supposed to get keypresses also such wfica.

  • Reduce the problem to the smallest fvwm configuration example (where
    possible). Start with a blank config file (fvwm3 -f/dev/null) and go from
    there.
    N/A in this case

  • Does the problem also happen with Fvwm2?
    N/A

Specified behavior just partially depends on configuration.

Does Fvwm3 crash?

No.

Extra Information

  • Anything else we should know?
    As I mentioned this behavior cannot be observed under another WMs, such like GNOME, Openbox, whilst same behavior came up with pekwm (eg.)

  • Feel free to take a screen capture or video and upload to this issue if you
    Cannot give video/picture due to nature content of screenshot/video (highly restricted).

  • Attach $HOME/.fvwm/fvwm3-output.log from the step above.
    Included inline because of its size.

This is a niche issue and not something I'm keen to track down.