mirror of
https://github.com/brl/mutter.git
synced 2024-11-24 09:00:42 -05:00
MetaWaylandSeat: reset pointer focus always when it might be different
It can happen because of a grab that the current surface changes but the focus doesn't. Later on, when the grab ends, we would keep the previous focus until the user goes out of the window and back in again.
This commit is contained in:
parent
a67c12e873
commit
e2c768d682
@ -520,14 +520,14 @@ meta_wayland_seat_repick (MetaWaylandSeat *seat,
|
||||
surface = meta_shaped_texture_get_wayland_surface (shaped_texture);
|
||||
}
|
||||
|
||||
if (surface != pointer->current)
|
||||
pointer->current = surface;
|
||||
if (surface != pointer->focus)
|
||||
{
|
||||
const MetaWaylandPointerGrabInterface *interface =
|
||||
pointer->grab->interface;
|
||||
interface->focus (pointer->grab,
|
||||
surface,
|
||||
pointer->current_x, pointer->current_y);
|
||||
pointer->current = surface;
|
||||
}
|
||||
|
||||
if (pointer->grab->focus)
|
||||
|
Loading…
Reference in New Issue
Block a user