widget: Add private accessor to event controllers

This commit is contained in:
Emmanuele Bassi 2020-02-06 14:21:10 +00:00 committed by Matthias Clasen
parent 4b798e238f
commit 56595e7529
2 changed files with 21 additions and 0 deletions

View File

@ -12043,6 +12043,24 @@ gtk_widget_reset_controllers (GtkWidget *widget)
}
}
GList *
gtk_widget_list_controllers (GtkWidget *widget,
GtkPropagationPhase phase)
{
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
GList *res = NULL, *l;
for (l = priv->event_controllers; l; l = l->next)
{
GtkEventController *controller = l->data;
if (gtk_event_controller_get_propagation_phase (controller) == phase)
res = g_list_prepend (res, controller);
}
return g_list_reverse (res);
}
static inline void
gtk_widget_maybe_add_debug_render_nodes (GtkWidget *widget,
GtkSnapshot *snapshot)

View File

@ -284,6 +284,9 @@ gboolean gtk_widget_has_size_request (GtkWidget *widget);
void gtk_widget_reset_controllers (GtkWidget *widget);
GList * gtk_widget_list_controllers (GtkWidget *widget,
GtkPropagationPhase phase);
gboolean gtk_widget_query_tooltip (GtkWidget *widget,
gint x,
gint y,