mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2025-11-03 09:01:42 -05:00
Add a focus change signal for wl_pointer and wl_keyboard
This commit is contained in:
parent
3fd1e128e9
commit
aa792ad3d6
2 changed files with 6 additions and 0 deletions
|
|
@ -565,6 +565,7 @@ wl_pointer_init(struct wl_pointer *pointer)
|
|||
pointer->default_grab.interface = &default_pointer_grab_interface;
|
||||
pointer->default_grab.pointer = pointer;
|
||||
pointer->grab = &pointer->default_grab;
|
||||
wl_signal_init(&pointer->focus_signal);
|
||||
|
||||
/* FIXME: Pick better co-ords. */
|
||||
pointer->x = wl_fixed_from_int(100);
|
||||
|
|
@ -589,6 +590,7 @@ wl_keyboard_init(struct wl_keyboard *keyboard)
|
|||
keyboard->default_grab.interface = &default_keyboard_grab_interface;
|
||||
keyboard->default_grab.keyboard = keyboard;
|
||||
keyboard->grab = &keyboard->default_grab;
|
||||
wl_signal_init(&keyboard->focus_signal);
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
@ -747,6 +749,7 @@ wl_pointer_set_focus(struct wl_pointer *pointer, struct wl_surface *surface,
|
|||
pointer->focus_resource = resource;
|
||||
pointer->focus = surface;
|
||||
pointer->default_grab.focus = surface;
|
||||
wl_signal_emit(&pointer->focus_signal, pointer);
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
@ -778,6 +781,7 @@ wl_keyboard_set_focus(struct wl_keyboard *keyboard, struct wl_surface *surface)
|
|||
|
||||
keyboard->focus_resource = resource;
|
||||
keyboard->focus = surface;
|
||||
wl_signal_emit(&keyboard->focus_signal, keyboard);
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
|
|||
|
|
@ -247,6 +247,7 @@ struct wl_pointer {
|
|||
struct wl_resource *focus_resource;
|
||||
struct wl_listener focus_listener;
|
||||
uint32_t focus_serial;
|
||||
struct wl_signal focus_signal;
|
||||
|
||||
struct wl_pointer_grab *grab;
|
||||
struct wl_pointer_grab default_grab;
|
||||
|
|
@ -270,6 +271,7 @@ struct wl_keyboard {
|
|||
struct wl_resource *focus_resource;
|
||||
struct wl_listener focus_listener;
|
||||
uint32_t focus_serial;
|
||||
struct wl_signal focus_signal;
|
||||
|
||||
struct wl_keyboard_grab *grab;
|
||||
struct wl_keyboard_grab default_grab;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue