diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-04-27 03:14:36 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-04-29 02:37:58 +0000 |
commit | 6120eb19d44d96060daff4f0e84920cbdf0b18c8 (patch) | |
tree | 348ea80535d1bdca094e13061166707435c32000 | |
parent | 3d486cac86d98f3524d4fc04c8c3bd8d4e5d886a (diff) | |
download | gtk+-6120eb19d44d96060daff4f0e84920cbdf0b18c8.tar.gz |
text, label: Handle default activation via action
We can now activate the default widget via
the gtk.activate-default action. This makes
it unnecessary to have a GtkRoot or GtkBud
api for this.
-rw-r--r-- | gtk/gtklabel.c | 8 | ||||
-rw-r--r-- | gtk/gtktext.c | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c index 16ef24e076..6e9f200fcf 100644 --- a/gtk/gtklabel.c +++ b/gtk/gtklabel.c @@ -6202,7 +6202,13 @@ gtk_label_activate_current_link (GtkLabel *label) if (link) emit_activate_link (label, link); else - gtk_root_activate_default (gtk_widget_get_root (widget)); + { + GActionGroup *group; + + group = gtk_widget_get_action_group (widget, "gtk"); + if (group) + g_action_group_activate_action (group, "activate-default", NULL); + } } static GtkLabelLink * diff --git a/gtk/gtktext.c b/gtk/gtktext.c index aba651b8fd..016050f338 100644 --- a/gtk/gtktext.c +++ b/gtk/gtktext.c @@ -3845,7 +3845,13 @@ gtk_text_real_activate (GtkText *self) GtkTextPrivate *priv = gtk_text_get_instance_private (self); if (priv->activates_default) - gtk_root_activate_default (gtk_widget_get_root (GTK_WIDGET (self))); + { + GActionGroup *group; + + group = gtk_widget_get_action_group (GTK_WIDGET (self), "gtk"); + if (group) + g_action_group_activate_action (group, "activate-default", NULL); + } } static void |