]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blobdiff - src/x-server-xmir.c
Load all users only when really needed
[sojka/lightdm.git] / src / x-server-xmir.c
index 7f90c4e17c9291a271abd8ae8ce4f3ddbb794393..fac57362ad05a9d99bcac0522d286290974a59cc 100644 (file)
@@ -53,18 +53,12 @@ XServerXmir *
 x_server_xmir_new (UnitySystemCompositor *compositor)
 {
     XServerXmir *server;
-    gchar *name;
 
     server = g_object_new (X_SERVER_XMIR_TYPE, NULL);
     x_server_local_set_command (X_SERVER_LOCAL (server), "Xmir");
     server->priv->compositor = g_object_ref (compositor);
     g_signal_connect (compositor, DISPLAY_SERVER_SIGNAL_READY, G_CALLBACK (compositor_ready_cb), server);
     g_signal_connect (compositor, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (compositor_stopped_cb), server);
-  
-    name = g_strdup_printf ("x-%d", x_server_get_display_number (X_SERVER (server)));
-    display_server_set_name (DISPLAY_SERVER (server), name);
-    g_free (name);
-
 
     return server;
 }
@@ -104,6 +98,12 @@ x_server_xmir_add_args (XServerLocal *x_server, GString *command)
         g_string_append_printf (command, " -mirSocket %s", server->priv->mir_socket);
 }
 
+static DisplayServer *
+x_server_xmir_get_parent (DisplayServer *server)
+{
+    return DISPLAY_SERVER (X_SERVER_XMIR (server)->priv->compositor);
+}
+
 static gint
 x_server_xmir_get_vt (DisplayServer *server)
 {
@@ -159,6 +159,7 @@ x_server_xmir_class_init (XServerXmirClass *klass)
     XServerLocalClass *x_server_local_class = X_SERVER_LOCAL_CLASS (klass);  
 
     x_server_local_class->add_args = x_server_xmir_add_args;
+    display_server_class->get_parent = x_server_xmir_get_parent;
     display_server_class->get_vt = x_server_xmir_get_vt;
     display_server_class->start = x_server_xmir_start;
     object_class->finalize = x_server_xmir_finalize;