labwc/include
John Lindgren 6c6e406507 cursor: Factor out cursor_update_common() and fix some glitches
Fix a couple of glitches seen when exiting interactive move/resize:

 - Cursor briefly set to left_ptr rather than the correct cursor image
 - Cursor not updated if the view being moved/resized is destroyed

Also make sure to exit interactive mode if the view is going fullscreen
(labwc gets very confused otherwise).

Code changes in detail:

 - Factor out set_server_cursor() which will set the correct cursor
   image for non-client areas (either XCURSOR_DEFAULT or one of the
   resize cursors).
 - Unify the logic from cursor_rebase() and process_cursor_motion by
   factoring out cursor_update_common().  This corrects some logic
   discrepancies between the two, which should be a good thing(TM).
 - Remove the extra cursor_set(XCURSOR_DEFAULT) from interactive_end()
   and instead rely on cursor_update_focus() to do the right thing.
 - Simplify cursor_button() by just calling interactive_end() when we
   want to exit interactive mode.
 - Call cursor_update_focus() from view_destroy() if the view had mouse
   focus or was being interactively moved/resized.

v2: Eliminate force_reenter parameters and figure out automatically
    when we need to re-enter the surface.
v3: Rename wlseat -> wlr_seat.
v4: Simplify client/server cursor logic.
2022-09-13 13:29:36 -04:00
..
common alt-tab preview: restore functionality after move to scene-graph 2022-08-28 20:40:36 +02:00
config Add config option to disable preview outlines 2022-08-24 20:21:14 +01:00
menu menu: support <separator /> 2022-06-25 14:56:35 +02:00
private src/action.c: Convert action->arg to a list of action_arg 2022-07-04 16:19:28 +01:00
xbm Prepare to move from wlr_texture to lab_data_buffer 2022-02-23 21:47:01 +00:00
action.h src/action.c: Convert action->arg to a list of action_arg 2022-07-04 16:19:28 +01:00
buffer.h src/buffer: Automatically adapt to scale attribute 2022-06-14 22:03:08 +01:00
debug.h Add debug_dump_scene() 2022-02-23 21:47:01 +00:00
key-state.h keyboard: cancel repeat when handling key-bind 2022-01-02 15:28:35 +00:00
labwc.h cursor: Factor out cursor_update_common() and fix some glitches 2022-09-13 13:29:36 -04:00
layers.h Chase wlroots: every scene_node parent is now a tree 2022-06-07 07:13:37 +01:00
meson.build Make xwayland support optional 2020-12-30 10:29:21 +00:00
node.h src/ssd: Convert button node descriptors to struct ssd_button 2022-06-09 22:04:35 +01:00
resistance.h Add SPDX identifiers 2021-11-13 21:56:53 +00:00
ssd.h view/ssd: Refactor and fix visual indication for active windows 2022-08-27 06:58:20 +01:00
theme.h menu: support <separator /> 2022-06-25 14:56:35 +02:00
workspaces.h workspaces: Add workspaces.{c,h} 2022-06-15 22:26:21 +02:00