mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2025-11-09 13:29:48 -05:00
wayland-server: Track input_device resource for focused surface
We no long track the focused surface, but expect the compositor to set focus when the focus changes. We do track the resource for the input device that corresponds to the current surface, in case that goes away.
This commit is contained in:
parent
ffe8ee8d60
commit
8bc1abd1f5
1 changed files with 4 additions and 4 deletions
|
|
@ -342,7 +342,7 @@ lose_pointer_focus(struct wl_listener *listener,
|
|||
container_of(listener, struct wl_input_device,
|
||||
pointer_focus_listener);
|
||||
|
||||
wl_input_device_set_pointer_focus(device, NULL, time, 0, 0, 0, 0);
|
||||
device->pointer_focus_resource = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -353,7 +353,7 @@ lose_keyboard_focus(struct wl_listener *listener,
|
|||
container_of(listener, struct wl_input_device,
|
||||
keyboard_focus_listener);
|
||||
|
||||
wl_input_device_set_keyboard_focus(device, NULL, time);
|
||||
device->keyboard_focus_resource = NULL;
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
@ -412,7 +412,7 @@ wl_input_device_set_pointer_focus(struct wl_input_device *device,
|
|||
wl_resource_post_event(resource,
|
||||
WL_INPUT_DEVICE_POINTER_FOCUS,
|
||||
time, surface, x, y, sx, sy);
|
||||
wl_list_insert(surface->resource.destroy_listener_list.prev,
|
||||
wl_list_insert(resource->destroy_listener_list.prev,
|
||||
&device->pointer_focus_listener.link);
|
||||
}
|
||||
|
||||
|
|
@ -445,7 +445,7 @@ wl_input_device_set_keyboard_focus(struct wl_input_device *device,
|
|||
wl_resource_post_event(resource,
|
||||
WL_INPUT_DEVICE_KEYBOARD_FOCUS,
|
||||
time, surface, &device->keys);
|
||||
wl_list_insert(surface->resource.destroy_listener_list.prev,
|
||||
wl_list_insert(resource->destroy_listener_list.prev,
|
||||
&device->keyboard_focus_listener.link);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue