diff options
author | Ray Strode <rstrode@redhat.com> | 2016-03-04 11:10:18 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2016-03-04 20:17:26 -0500 |
commit | 046a4a6e0fbb57096f05b537248095c9c32c6744 (patch) | |
tree | 56db34b448b65678c0fce37a5773a9f32cdf29cc | |
parent | fdde27ea9ced5b8489127ed69e00f9ca363c799f (diff) | |
download | gtk+-046a4a6e0fbb57096f05b537248095c9c32c6744.tar.gz |
gtkapplication-dbus: use application id instead of prgname for SM
gnome-session takes an "app id" for client and inhibitor registration,
This app id is supposed to be a desktop file id (complete with the
.desktop extension), but gtk+ currently uses g_get_prgname ().
This commit changes gtkapplication to use the application id instead,
which is a much more natural fit. gnome-session is going to be updated
to stop using the .desktop extension, too, so everything is consistent.
https://bugzilla.gnome.org/show_bug.cgi?id=763106
-rw-r--r-- | gtk/gtkapplication-dbus.c | 10 | ||||
-rw-r--r-- | gtk/gtkapplicationprivate.h | 1 |
2 files changed, 3 insertions, 8 deletions
diff --git a/gtk/gtkapplication-dbus.c b/gtk/gtkapplication-dbus.c index 236700296c..111909343b 100644 --- a/gtk/gtkapplication-dbus.c +++ b/gtk/gtkapplication-dbus.c @@ -153,17 +153,14 @@ gtk_application_impl_dbus_startup (GtkApplicationImpl *impl, goto out; } - /* FIXME: should we reuse the D-Bus application id here ? */ - dbus->app_id = g_strdup (g_get_prgname ()); - if (!register_session) goto out; - g_debug ("Registering client '%s' '%s'", dbus->app_id, client_id); + g_debug ("Registering client '%s' '%s'", dbus->application_id, client_id); res = g_dbus_proxy_call_sync (dbus->sm_proxy, "RegisterClient", - g_variant_new ("(ss)", dbus->app_id, client_id), + g_variant_new ("(ss)", dbus->application_id, client_id), G_DBUS_CALL_FLAGS_NONE, G_MAXINT, NULL, @@ -391,7 +388,7 @@ gtk_application_impl_dbus_inhibit (GtkApplicationImpl *impl, res = g_dbus_proxy_call_sync (dbus->sm_proxy, "Inhibit", g_variant_new ("(s@usu)", - dbus->app_id, + dbus->application_id, window ? gtk_application_impl_dbus_get_window_system_id (dbus, window) : g_variant_new_uint32 (0), reason, flags), @@ -517,7 +514,6 @@ gtk_application_impl_dbus_finalize (GObject *object) g_free (dbus->app_menu_path); g_free (dbus->menubar_path); - g_free (dbus->app_id); G_OBJECT_CLASS (gtk_application_impl_dbus_parent_class)->finalize (object); } diff --git a/gtk/gtkapplicationprivate.h b/gtk/gtkapplicationprivate.h index dbd711563b..35819f8618 100644 --- a/gtk/gtkapplicationprivate.h +++ b/gtk/gtkapplicationprivate.h @@ -133,7 +133,6 @@ typedef struct guint menubar_id; /* Session management... */ - gchar *app_id; /* actually prgname... */ GDBusProxy *sm_proxy; GDBusProxy *client_proxy; gchar *client_path; |