mirror of
https://github.com/brl/mutter.git
synced 2024-12-26 04:42:14 +00:00
wayland/pointer: Update cursor surface when current surface changes
The cursor surface is decided by the "current" surface; if that alone changed (e.g. current surface was destroyed), we didn't update the cursor, meaning it either got stuck, or got hidden if the client exited completely. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3262>
This commit is contained in:
parent
838d8881d9
commit
c7efb68ff1
@ -620,6 +620,9 @@ static void
|
||||
meta_wayland_pointer_set_current (MetaWaylandPointer *pointer,
|
||||
MetaWaylandSurface *surface)
|
||||
{
|
||||
if (pointer->current == surface)
|
||||
return;
|
||||
|
||||
if (pointer->current)
|
||||
{
|
||||
g_clear_signal_handler (&pointer->current_surface_destroyed_handler_id,
|
||||
@ -635,6 +638,8 @@ meta_wayland_pointer_set_current (MetaWaylandPointer *pointer,
|
||||
G_CALLBACK (current_surface_destroyed),
|
||||
pointer);
|
||||
}
|
||||
|
||||
meta_wayland_pointer_update_cursor_surface (pointer);
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
Reference in New Issue
Block a user