mirror of
https://github.com/brl/mutter.git
synced 2025-02-14 12:24:09 +00:00
backends/x11: Use new constructor for emulated pointer events
Use the new constructor to generate a synthesized motion event. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3153>
This commit is contained in:
parent
75e8bab1c1
commit
1f9e787b83
@ -1044,19 +1044,22 @@ meta_backend_x11_sync_pointer (MetaBackendX11 *backend_x11)
|
||||
ClutterBackend *clutter_backend = meta_backend_get_clutter_backend (backend);
|
||||
ClutterSeat *seat = clutter_backend_get_default_seat (clutter_backend);
|
||||
ClutterInputDevice *pointer = clutter_seat_get_pointer (seat);
|
||||
ClutterStage *stage = CLUTTER_STAGE (meta_backend_get_stage (backend));
|
||||
ClutterModifierType modifiers;
|
||||
ClutterEvent *event;
|
||||
graphene_point_t pos;
|
||||
|
||||
event = clutter_event_new (CLUTTER_MOTION);
|
||||
clutter_seat_query_state (seat, pointer, NULL, &pos, &modifiers);
|
||||
clutter_event_set_flags (event, CLUTTER_EVENT_FLAG_SYNTHETIC);
|
||||
clutter_event_set_coords (event, pos.x, pos.y);
|
||||
clutter_event_set_device (event, pointer);
|
||||
clutter_event_set_state (event, modifiers);
|
||||
clutter_event_set_source_device (event, NULL);
|
||||
clutter_event_set_stage (event, stage);
|
||||
|
||||
event = clutter_event_motion_new (CLUTTER_EVENT_FLAG_SYNTHETIC,
|
||||
CLUTTER_CURRENT_TIME,
|
||||
pointer,
|
||||
NULL,
|
||||
modifiers,
|
||||
pos,
|
||||
GRAPHENE_POINT_INIT (0, 0),
|
||||
GRAPHENE_POINT_INIT (0, 0),
|
||||
GRAPHENE_POINT_INIT (0, 0),
|
||||
NULL);
|
||||
|
||||
clutter_event_put (event);
|
||||
clutter_event_free (event);
|
||||
|
Loading…
x
Reference in New Issue
Block a user