[gnome-shell/wip/carlosg/no-event-source: 1/3] st: Move StButton away from clutter_event_get_source()




commit fcbec12523200765393b7c1112294e26cd4e72e1
Author: Carlos Garnacho <carlosg gnome org>
Date:   Fri Feb 25 16:11:09 2022 +0100

    st: Move StButton away from clutter_event_get_source()
    
    Ask the stage about the device actor instead.

 src/st/st-button.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
---
diff --git a/src/st/st-button.c b/src/st/st-button.c
index 0e95bfaf09..3583c68e0d 100644
--- a/src/st/st-button.c
+++ b/src/st/st-button.c
@@ -219,9 +219,16 @@ st_button_button_release (ClutterActor       *actor,
 
   if (priv->button_mask & mask)
     {
+      ClutterStage *stage;
+      ClutterEventSequence *sequence;
+      ClutterActor *target;
       gboolean is_click;
 
-      is_click = priv->grabbed && clutter_actor_contains (actor, event->source);
+      stage = clutter_event_get_stage ((ClutterEvent *) event);
+      sequence = clutter_event_get_event_sequence ((ClutterEvent *) event);
+      target = clutter_stage_get_device_actor (stage, device, sequence);
+
+      is_click = priv->grabbed && clutter_actor_contains (actor, target);
       st_button_release (button, device, mask, is_click ? event->button : 0, NULL);
 
       priv->grabbed &= ~mask;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]