summaryrefslogtreecommitdiff
path: root/daemon/gdm-local-display-factory.c
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/gdm-local-display-factory.c')
-rw-r--r--daemon/gdm-local-display-factory.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c
index 2a28c14a..6512f9b3 100644
--- a/daemon/gdm-local-display-factory.c
+++ b/daemon/gdm-local-display-factory.c
@@ -508,7 +508,8 @@ strrep (char* in, char** out, char* old, char* new)
static void
seat_open_session_request (DBusGProxy *seat_proxy,
const char *ssid,
- const char *type,
+ const char *session_type,
+ const char *display_template_name,
GHashTable *display_variables,
const char *display_type,
GHashTable *parameters,
@@ -610,6 +611,8 @@ seat_open_session_request (DBusGProxy *seat_proxy,
if (IS_STR_SET (comm))
g_object_set (display, "x11-command", comm, NULL);
g_free (comm);
+ if (IS_STR_SET (display_template_name))
+ g_object_set (display, "x11-display-type", display_template_name, NULL);
g_object_set (display, "use-auth", use_auth, NULL);
g_signal_connect (display,
@@ -764,9 +767,11 @@ manage_static_sessions_per_seat (GdmLocalDisplayFactory *factory,
return;
}
- dbus_g_object_register_marshaller (gdm_marshal_VOID__STRING_STRING_POINTER_STRING_POINTER,
+ dbus_g_object_register_marshaller (gdm_marshal_VOID__STRING_STRING_STRING_POINTER_STRING_POINTER,
G_TYPE_NONE,
- DBUS_TYPE_G_OBJECT_PATH, G_TYPE_STRING,
+ DBUS_TYPE_G_OBJECT_PATH,
+ G_TYPE_STRING,
+ G_TYPE_STRING,
GDM_DBUS_TYPE_G_STRING_STRING_HASHTABLE,
G_TYPE_STRING,
GDM_DBUS_TYPE_G_STRING_STRING_HASHTABLE,
@@ -775,6 +780,7 @@ manage_static_sessions_per_seat (GdmLocalDisplayFactory *factory,
"OpenSessionRequest",
DBUS_TYPE_G_OBJECT_PATH,
G_TYPE_STRING,
+ G_TYPE_STRING,
GDM_DBUS_TYPE_G_STRING_STRING_HASHTABLE,
G_TYPE_STRING,
GDM_DBUS_TYPE_G_STRING_STRING_HASHTABLE,