diff options
author | Matthias Clasen <mclasen@redhat.com> | 2010-06-08 09:03:07 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2010-06-08 09:03:07 -0400 |
commit | 79b161f709671b7408a03a5456ed6716b3318c42 (patch) | |
tree | a914f14614fe7db4cc9f8c16f401885388ce6f66 /gtk/gtkapplication.c | |
parent | cca298ad7d2e5ab80c238cddf84875b5dc8a74d4 (diff) | |
download | gtk+-79b161f709671b7408a03a5456ed6716b3318c42.tar.gz |
Use gtk_action_group_get_action when looking up actions
...instead of open-coding it. Pointed out by Christian Persch
in bug 620960
Diffstat (limited to 'gtk/gtkapplication.c')
-rw-r--r-- | gtk/gtkapplication.c | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/gtk/gtkapplication.c b/gtk/gtkapplication.c index 444bc9b5db..6be15a82b1 100644 --- a/gtk/gtkapplication.c +++ b/gtk/gtkapplication.c @@ -116,12 +116,11 @@ gtk_application_default_prepare_activation (GApplication *application, GVariant *value; g_variant_iter_init (&iter, platform_data); - while (g_variant_iter_next (&iter, "{sv}", &key, &value)) + while (g_variant_iter_next (&iter, "{&sv}", &key, &value)) { if (strcmp (key, "startup-notification-id") == 0 && - strcmp (g_variant_get_type_string (value), "s") == 0) + g_variant_is_of_type (value, G_VARIANT_TYPE_STRING)) gdk_notify_startup_complete_with_id (g_variant_get_string (value, NULL)); - g_free (key); g_variant_unref (value); } @@ -141,24 +140,18 @@ gtk_application_default_activated (GApplication *application, static void gtk_application_default_action (GApplication *application, - const gchar *action, + const gchar *action_name, guint timestamp) { GtkApplication *app = GTK_APPLICATION (application); - GList *actions, *iter; + GtkAction *action; - actions = gtk_action_group_list_actions (app->priv->main_actions); - for (iter = actions; iter; iter = iter->next) + action = gtk_action_group_get_action (app->priv->main_actions, action_name); + if (action) { - GtkAction *gtkaction = iter->data; - if (strcmp (action, gtk_action_get_name (gtkaction)) == 0) - { - /* TODO set timestamp */ - gtk_action_activate (gtkaction); - break; - } + /* TODO set timestamp */ + gtk_action_activate (action); } - g_list_free (actions); } static GVariant * |