diff --git a/clutter/clutter/clutter-enums.h b/clutter/clutter/clutter-enums.h index 43386366c..b2783c9c8 100644 --- a/clutter/clutter/clutter-enums.h +++ b/clutter/clutter/clutter-enums.h @@ -706,6 +706,7 @@ typedef enum /*< flags prefix=CLUTTER_EVENT >*/ CLUTTER_EVENT_FLAG_REPEATED = 1 << 2, CLUTTER_EVENT_FLAG_RELATIVE_MOTION = 1 << 3, CLUTTER_EVENT_FLAG_GRAB_NOTIFY = 1 << 4, + CLUTTER_EVENT_FLAG_POINTER_EMULATED = 1 << 5, } ClutterEventFlags; /** diff --git a/src/backends/native/meta-seat-impl.c b/src/backends/native/meta-seat-impl.c index 90fc569b6..9941e5b4f 100644 --- a/src/backends/native/meta-seat-impl.c +++ b/src/backends/native/meta-seat-impl.c @@ -1130,7 +1130,8 @@ notify_scroll (ClutterInputDevice *input_device, event->scroll.scroll_source = scroll_source; event->scroll.finish_flags = flags; - _clutter_event_set_pointer_emulated (event, emulated); + if (emulated) + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; queue_event (seat_impl, event); } @@ -1163,7 +1164,8 @@ notify_discrete_scroll (ClutterInputDevice *input_device, clutter_event_set_source_device (event, input_device); event->scroll.scroll_source = scroll_source; - _clutter_event_set_pointer_emulated (event, emulated); + if (emulated) + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; queue_event (seat_impl, event); } diff --git a/src/backends/x11/meta-seat-x11.c b/src/backends/x11/meta-seat-x11.c index 7231acdb0..230d1ccc9 100644 --- a/src/backends/x11/meta-seat-x11.c +++ b/src/backends/x11/meta-seat-x11.c @@ -2320,7 +2320,7 @@ meta_seat_x11_translate_event (MetaSeatX11 *seat, } if (xev->flags & XIPointerEmulated) - _clutter_event_set_pointer_emulated (event, TRUE); + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; if (xi_event->evtype == XI_ButtonPress) meta_stage_x11_set_user_time (stage_x11, event->button.time); @@ -2403,7 +2403,7 @@ meta_seat_x11_translate_event (MetaSeatX11 *seat, &xev->valuators); if (xev->flags & XIPointerEmulated) - _clutter_event_set_pointer_emulated (event, TRUE); + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; g_debug ("motion: win:0x%x device:%d '%s' (x:%.2f, y:%.2f, axes:%s)", (unsigned int) stage_x11->xwin, @@ -2475,7 +2475,7 @@ meta_seat_x11_translate_event (MetaSeatX11 *seat, event->touch.sequence = GINT_TO_POINTER (MAX (1, xev->detail + 1)); if (xev->flags & XITouchEmulatingPointer) - _clutter_event_set_pointer_emulated (event, TRUE); + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; g_debug ("touch %s: win:0x%x device:%d '%s' (seq:%d, x:%.2f, y:%.2f, axes:%s)", event->type == CLUTTER_TOUCH_BEGIN ? "begin" : "end", @@ -2523,7 +2523,7 @@ meta_seat_x11_translate_event (MetaSeatX11 *seat, event->touch.modifier_state |= CLUTTER_BUTTON1_MASK; if (xev->flags & XITouchEmulatingPointer) - _clutter_event_set_pointer_emulated (event, TRUE); + event->any.flags |= CLUTTER_EVENT_FLAG_POINTER_EMULATED; meta_seat_x11_update_touchpoint (seat, event->touch.sequence, diff --git a/src/core/events.c b/src/core/events.c index 6a432e825..0f3d64748 100644 --- a/src/core/events.c +++ b/src/core/events.c @@ -138,7 +138,7 @@ sequence_is_pointer_emulated (MetaDisplay *display, if (!sequence) return FALSE; - if (clutter_event_is_pointer_emulated (event)) + if (clutter_event_get_flags (event) & CLUTTER_EVENT_FLAG_POINTER_EMULATED) return TRUE; #ifdef HAVE_NATIVE_BACKEND diff --git a/src/wayland/meta-wayland-pointer.c b/src/wayland/meta-wayland-pointer.c index 93741175c..8fa46a9c7 100644 --- a/src/wayland/meta-wayland-pointer.c +++ b/src/wayland/meta-wayland-pointer.c @@ -767,7 +767,7 @@ handle_scroll_event (MetaWaylandPointer *pointer, MetaWaylandPointerClient *client; gboolean is_discrete_event = FALSE, is_value120_event = FALSE; - if (clutter_event_is_pointer_emulated (event)) + if (clutter_event_get_flags (event) & CLUTTER_EVENT_FLAG_POINTER_EMULATED) return; client = pointer->focus_client;