fvwm3
fvwm3 copied to clipboard
Extra FocusIn/FocusOut events when trying to drag the mouse inside FreeRDP window
Upfront Information
- Fvwm3 version (run:
fvwm3 --version
)
fvwm3 1.0.4 (released)
with support for: ReadLine, XPM, PNG, SVG, Shape, XShm, SM, Bidi text, XRandR, XRender, XCursor, XFT, NLS
-
Linux distribution or BSD name/version FreeBSD 13.0-RELEASE-p4
-
Platform (run:
uname -sp
) FreeBSD amd64
Expected Behaviour
Dragging the mouse in the client area of FreeRDP should not cause focus events.
Actual Behaviour
Only in the presence of bindings to mouse button 1 on a window (context 'W'), there are FocusOut/FocusIn events when trying to drag the mouse inside FreeRDP. The events look like this in xev
:
FocusOut event, serial 18, synthetic NO, window 0x4200001,
mode NotifyUngrab, detail NotifyNonlinear
FocusIn event, serial 18, synthetic NO, window 0x4200001,
mode NotifyUngrab, detail NotifyNonlinear
FocusOut event, serial 18, synthetic NO, window 0x4200001,
mode NotifyGrab, detail NotifyNonlinear
FocusIn event, serial 18, synthetic NO, window 0x4200001,
mode NotifyGrab, detail NotifyNonlinear
FocusOut event, serial 18, synthetic NO, window 0x4200001,
mode NotifyUngrab, detail NotifyNonlinear
FocusIn event, serial 18, synthetic NO, window 0x4200001,
mode NotifyUngrab, detail NotifyNonlinear
FocusOut event, serial 18, synthetic NO, window 0x4200001,
mode NotifyGrab, detail NotifyNonlinear
FocusIn event, serial 18, synthetic NO, window 0x4200001,
mode NotifyGrab, detail NotifyNonlinear
When I remove these bindings from my fvwm config:
Mouse 1 W M move-and-raise-or-raiselower
Mouse 1 W CM Module FvwmIdent
everything works as expected (xev -id <freerdp-window-id> -event focus
doesn't see any events)
Enabling logging
No log messages are created when reproducing the behavior:
[1635504547.841970] log opened (because of SIGUSR2)
Steps to Reproduce
- Add a binding to mouse button 1 with context 'W' to your config, e.g.
Mouse 1 W CM Module FvwmIdent
- Log into a remote machine with FreeRDP
- Try to drag a window on the remote machine
- To see the extra events, use
xev -id <freerdp-window-id> -event focus
- This also happens on fvwm2
Extra Information
Related issue on FreeRDP: https://github.com/FreeRDP/FreeRDP/issues/6948