diff options
author | Timm Bäder <mail@baedert.org> | 2019-01-29 05:33:38 +0100 |
---|---|---|
committer | Timm Bäder <mail@baedert.org> | 2019-02-04 17:05:30 +0100 |
commit | 43234eec42082d2ffc60b94ee3d852f27db2508d (patch) | |
tree | 8681a075f9c44d90e8d4b746e08da56c73734f4d /gtk | |
parent | 3d1fd5169cd87ccf0be04d1549049998799c2ba2 (diff) | |
download | gtk+-43234eec42082d2ffc60b94ee3d852f27db2508d.tar.gz |
gtkmain: Rename event_widget to target_widget in do_event
The event_widget is the widget that the surface belongs to which got
this event. The target widget is the one that will receive the event.
The previous terminology was confusing.
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtkmain.c | 61 |
1 files changed, 32 insertions, 29 deletions
diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c index 773fb5624f..98b99b2883 100644 --- a/gtk/gtkmain.c +++ b/gtk/gtkmain.c @@ -1720,6 +1720,7 @@ void gtk_main_do_event (GdkEvent *event) { GtkWidget *event_widget; + GtkWidget *target_widget; GtkWidget *grab_widget = NULL; GtkWindowGroup *window_group; GdkEvent *rewritten_event = NULL; @@ -1734,6 +1735,8 @@ gtk_main_do_event (GdkEvent *event) if (!event_widget) return; + target_widget = event_widget; + /* If pointer or keyboard grabs are in effect, munge the events * so that each window group looks like a separate app. */ @@ -1741,7 +1744,7 @@ gtk_main_do_event (GdkEvent *event) if (rewritten_event) { event = rewritten_event; - event_widget = gtk_get_event_widget (event); + target_widget = gtk_get_event_widget (event); } /* Push the event onto a stack of current events for @@ -1750,28 +1753,28 @@ gtk_main_do_event (GdkEvent *event) current_events = g_list_prepend (current_events, event); if (is_pointing_event (event)) - event_widget = handle_pointing_event (event); - else if (GTK_IS_WINDOW (event_widget) && + target_widget = handle_pointing_event (event); + else if (GTK_IS_WINDOW (target_widget) && (event->any.type == GDK_KEY_PRESS || event->any.type == GDK_KEY_RELEASE)) { GtkWidget *focus_widget; if (event->any.type == GDK_KEY_PRESS && - gtk_window_activate_key (GTK_WINDOW (event_widget), (GdkEventKey *) event)) + gtk_window_activate_key (GTK_WINDOW (target_widget), (GdkEventKey *) event)) goto cleanup; - focus_widget = gtk_window_get_focus (GTK_WINDOW (event_widget)); + focus_widget = gtk_window_get_focus (GTK_WINDOW (target_widget)); if (focus_widget) - event_widget = focus_widget; + target_widget = focus_widget; } - if (!event_widget) + if (!target_widget) goto cleanup; - gdk_event_set_user_data (event, G_OBJECT (event_widget)); + gdk_event_set_user_data (event, G_OBJECT (target_widget)); - window_group = gtk_main_get_window_group (event_widget); + window_group = gtk_main_get_window_group (target_widget); device = gdk_event_get_device (event); /* check whether there is a (device) grab in effect... */ @@ -1786,17 +1789,17 @@ gtk_main_do_event (GdkEvent *event) * This is the key to implementing modality. */ if (!grab_widget || - ((gtk_widget_is_sensitive (event_widget) || event->any.type == GDK_SCROLL) && - gtk_widget_is_ancestor (event_widget, grab_widget))) - grab_widget = event_widget; + ((gtk_widget_is_sensitive (target_widget) || event->any.type == GDK_SCROLL) && + gtk_widget_is_ancestor (target_widget, grab_widget))) + grab_widget = target_widget; /* popovers are not really a "child" of their "parent" in the widget/window * hierarchy sense, we however want to interact with popovers spawn by widgets * within grab_widget. If this is the case, we let the event go through * unaffected by the grab. */ - if (check_event_in_child_popover (event_widget, grab_widget)) - grab_widget = event_widget; + if (check_event_in_child_popover (target_widget, grab_widget)) + grab_widget = target_widget; /* If the widget receiving events is actually blocked by another * device GTK+ grab @@ -1821,35 +1824,35 @@ gtk_main_do_event (GdkEvent *event) break; case GDK_DELETE: - g_object_ref (event_widget); + g_object_ref (target_widget); if (!gtk_window_group_get_current_grab (window_group) || - gtk_widget_get_toplevel (gtk_window_group_get_current_grab (window_group)) == event_widget) + gtk_widget_get_toplevel (gtk_window_group_get_current_grab (window_group)) == target_widget) { - if (!GTK_IS_WINDOW (event_widget) || - !gtk_window_emit_close_request (GTK_WINDOW (event_widget))) - gtk_widget_destroy (event_widget); + if (!GTK_IS_WINDOW (target_widget) || + !gtk_window_emit_close_request (GTK_WINDOW (target_widget))) + gtk_widget_destroy (target_widget); } - g_object_unref (event_widget); + g_object_unref (target_widget); break; case GDK_DESTROY: /* Unexpected GDK_DESTROY from the outside, ignore for * child windows, handle like a GDK_DELETE for toplevels */ - if (!gtk_widget_get_parent (event_widget)) + if (!gtk_widget_get_parent (target_widget)) { - g_object_ref (event_widget); - if (!gtk_widget_event (event_widget, event) && - gtk_widget_get_realized (event_widget)) - gtk_widget_destroy (event_widget); - g_object_unref (event_widget); + g_object_ref (target_widget); + if (!gtk_widget_event (target_widget, event) && + gtk_widget_get_realized (target_widget)) + gtk_widget_destroy (target_widget); + g_object_unref (target_widget); } break; case GDK_FOCUS_CHANGE: case GDK_GRAB_BROKEN: - if (!_gtk_widget_captured_event (event_widget, event)) - gtk_widget_event (event_widget, event); + if (!_gtk_widget_captured_event (target_widget, event)) + gtk_widget_event (target_widget, event); break; case GDK_KEY_PRESS: @@ -1915,7 +1918,7 @@ gtk_main_do_event (GdkEvent *event) case GDK_DRAG_LEAVE: case GDK_DRAG_MOTION: case GDK_DROP_START: - _gtk_drag_dest_handle_event (event_widget, event); + _gtk_drag_dest_handle_event (target_widget, event); break; case GDK_EVENT_LAST: default: |