diff options
Fix mousereport
This patch replaces the previous one I sent.
The following changes are made in this patch:
- Fix tracking of pressed buttons. Previously, pressing two buttons and
then releasing one would make st think no buttons are pressed, which
in particular broke MODE_MOUSEMOTION.
- Always send the lowest-numbered pressed button on motion events; when
no button is pressed for a motion event in MODE_MOUSEMANY, then send
a release. This matches the behaviour of xterm. (Previously, st sent
the most recently pressed button in the motion report.)
- Remove UB (?) access to potentially inactive struct member
e->xbutton.button of XEvent union.
- Fix (unlikely) possibility of overflow for large button numbers.
The one discrepancy I found between st and xterm is that xterm sometimes
encodes buttons with large numbers (>5) strangely. E.g., xterm reports
presses of buttons 8 and 9 as releases, whereas st properly (?) encodes
them as presses.
Diffstat (limited to '%252525252525252525253fid%252525252525252525253dfffee341e56206a036d0b69de7292e72ed887638%2525252525252525253fid%2525252525252525253dfffee341e56206a036d0b69de7292e72ed887638&id2%2525252525252525253d2aefa348baf4b702fdce98eb105bcba175d8283f%25252525252525253fid%25252525252525253dfffee341e56206a036d0b69de7292e72ed887638&id2%25252525252525253d2aefa348baf4b702fdce98eb105bcba175d8283f%252525252525253fid%252525252525253dfffee341e56206a036d0b69de7292e72ed887638%2525252525253fid%2525252525253dfffee341e56206a036d0b69de7292e72ed887638&id2%2525252525253dd4eee428f9c7b7f0aeb34042677bce4f98431fa6%25252525253fid%25252525253dfffee341e56206a036d0b69de7292e72ed887638%252525253fid%252525253dfffee341e56206a036d0b69de7292e72ed887638%2525253fid%2525253d2aefa348baf4b702fdce98eb105bcba175d8283f%25253fid%25253de823e2308f2a99023032a3966ebb7036a31d305f%253fid%253d2c5edf28ec851907305d73c6218ce75d39f1767f%3fid%3db1d97fec47b0d6633addb848131388ec40154ebc?id=ea7cd7b62fdfa6a1fbd882d1565d557577f2cf32')
0 files changed, 0 insertions, 0 deletions