Commit Graph

9 Commits

Author SHA1 Message Date
Russ Cox
19263a1071 devdraw: work around XWayland pointer warping 2025-10-09 19:37:41 -04:00
Roger Peppe
9da5b44513 cmd/devdraw: avoid use of X button state field
This bug is an intermittent annoyance and does not seem likely to be
fixed soon. It means that every so often my acme becomes unusable
because it behaves as if a mouse button is permanently set.

Avoid that issue by keeping track of mouse button state directly.

While we're about it, fix another annoying issue: under Linux the
FocusOut event reset the kstate field but not the kbuttons field,
meaning that the buttons state could inappropriately persist. This
happened occasionally by accident, but was easy to reproduce: with the
mouse button held down, drag outside the window and click Alt-Tab to
switch away from the window. We see a KeyDown event followed by FocusOut
but no KeyUp event.

Change-Id: I3708316478c80c41806d7157ae9929c6cd84b662
2025-03-29 11:23:26 -04:00
Russ Cox
a2567fcac9 devdraw: handle shift of real mouse buttons correctly 2024-06-17 09:28:40 -04:00
Xiao-Yong Jin
85bfd19a7b devdraw/x11: fix modifier key handling for some XkbOptions
Certain XkbOptions in X11 would change keysyms for modifier keys
between the key press and key release.

For example, under the XkbOptions "grp:shifts_toggle", though shift
keys remain Shift_L/R when pressed, they become ISO_Group_Next/Prev
when released.

This behavior makes devdraw unable to detect the release event
correctly and as a result mouse button 1 click always interpreted
as button 3 event after a shift key is used.
2022-07-26 12:13:13 -04:00
Gabriel Diaz
84167be4ad devdraw: use indirect impl interface in x11 2020-05-18 17:07:25 -04:00
Russ Cox
0be57355f9 devdraw: avoid deadlock in x11 resize
Fixes #347.
2020-01-15 12:01:12 -05:00
Russ Cox
fe2b2de984 devdraw: set windowrect correctly on x11 if window gets unexpected size
Fixes #54.
2020-01-15 11:26:01 -05:00
Russ Cox
1f799495e4 devdraw: notify window resize promptly on x11
Fixes #339.
2020-01-14 19:43:32 -05:00
Russ Cox
50923426bf devdraw: x11 working again
Need to think a bit more about locking,
but overall it's a working devdraw.

Multiclient mode may not be working
but nothing is using it yet.
2020-01-13 16:46:14 -05:00