[gtk+/wip/carlosg/event-delivery] gtk: Fix event delivery on GTK_PHASE_TARGET controllers



commit db94626771e534b7159c652495bb8702e228c45f
Author: Carlos Garnacho <carlosg gnome org>
Date:   Mon May 15 13:44:33 2017 +0200

    gtk: Fix event delivery on GTK_PHASE_TARGET controllers
    
    Look up the event target, not the "event widget" which is based on the
    event window, and thus points to the toplevel.

 gtk/gtkwidget.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index bdffa04..70212da 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -6961,7 +6961,7 @@ gtk_widget_event_internal (GtkWidget      *widget,
   event_copy = gdk_event_copy (event);
   translate_coordinates (event_copy, widget);
 
-  if (widget == gtk_get_event_widget (event_copy))
+  if (widget == gtk_get_event_target (event_copy))
     return_val |= _gtk_widget_run_controllers (widget, event_copy, GTK_PHASE_TARGET);
 
   g_signal_emit (widget, widget_signals[EVENT], 0, event_copy, &handled);


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