summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2016-03-04 11:10:18 -0500
committerMatthias Clasen <mclasen@redhat.com>2016-03-04 20:17:26 -0500
commit046a4a6e0fbb57096f05b537248095c9c32c6744 (patch)
tree56db34b448b65678c0fce37a5773a9f32cdf29cc
parentfdde27ea9ced5b8489127ed69e00f9ca363c799f (diff)
downloadgtk+-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.c10
-rw-r--r--gtk/gtkapplicationprivate.h1
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;