mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-05 04:06:08 -05:00
input: finalize mouse selection on a pointer-leave event on the GRID surface
If a mouse selection was ongoing, and the user switched workspace (probably using the keyboard...), and then back, the selection was still treated as ongoing, while all other mouse state has been reset. This meant the user had to tap at least once to stop the selection.
This commit is contained in:
parent
2eef28590a
commit
325ad6dd4e
2 changed files with 9 additions and 1 deletions
|
|
@ -45,6 +45,11 @@
|
||||||
### Deprecated
|
### Deprecated
|
||||||
### Removed
|
### Removed
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
|
* An ongoing mouse selection is now finalized on a pointer leave event
|
||||||
|
(for example by switching workspace while doing a mouse selection).
|
||||||
|
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
### Contributors
|
### Contributors
|
||||||
|
|
||||||
|
|
|
||||||
5
input.c
5
input.c
|
|
@ -1531,8 +1531,11 @@ wl_pointer_leave(void *data, struct wl_pointer *wl_pointer,
|
||||||
render_refresh_csd(old_moused);
|
render_refresh_csd(old_moused);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TERM_SURF_NONE:
|
|
||||||
case TERM_SURF_GRID:
|
case TERM_SURF_GRID:
|
||||||
|
selection_finalize(seat, old_moused, seat->pointer.serial);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case TERM_SURF_NONE:
|
||||||
case TERM_SURF_SEARCH:
|
case TERM_SURF_SEARCH:
|
||||||
case TERM_SURF_SCROLLBACK_INDICATOR:
|
case TERM_SURF_SCROLLBACK_INDICATOR:
|
||||||
case TERM_SURF_RENDER_TIMER:
|
case TERM_SURF_RENDER_TIMER:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue