mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-02-08 03:20:33 +01:00
input: add a motion signal to weston_pointer
The signal will be emitted after the pointer is moved. A shell plugin can listen to the signal and activate certain effects when the pointer touches the screen corners, for instance.
This commit is contained in:
parent
ace0a3920e
commit
6fcb378c01
2 changed files with 4 additions and 0 deletions
|
|
@ -307,6 +307,7 @@ struct weston_pointer {
|
|||
struct weston_view *focus;
|
||||
uint32_t focus_serial;
|
||||
struct wl_signal focus_signal;
|
||||
struct wl_signal motion_signal;
|
||||
|
||||
struct weston_view *sprite;
|
||||
struct wl_listener sprite_destroy_listener;
|
||||
|
|
|
|||
|
|
@ -392,6 +392,7 @@ weston_pointer_create(void)
|
|||
pointer->default_grab.pointer = pointer;
|
||||
pointer->grab = &pointer->default_grab;
|
||||
wl_signal_init(&pointer->focus_signal);
|
||||
wl_signal_init(&pointer->motion_signal);
|
||||
|
||||
pointer->sprite_destroy_listener.notify = pointer_handle_sprite_destroy;
|
||||
|
||||
|
|
@ -736,6 +737,8 @@ move_pointer(struct weston_seat *seat, wl_fixed_t x, wl_fixed_t y)
|
|||
iy - pointer->hotspot_y);
|
||||
weston_view_schedule_repaint(pointer->sprite);
|
||||
}
|
||||
|
||||
wl_signal_emit(&pointer->motion_signal, pointer);
|
||||
}
|
||||
|
||||
WL_EXPORT void
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue