summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-02-04 10:28:38 -0500
committerRay Strode <rstrode@redhat.com>2015-02-16 23:36:02 -0500
commitca3d6483a64d08612c7a880c17524de6f28bb1fc (patch)
tree72aeed1cfd58ec99466475fcc1efae7ac7bf8b16
parent028381ae3cfda329c38e106124bcd06553bb446a (diff)
downloadgdm-ca3d6483a64d08612c7a880c17524de6f28bb1fc.tar.gz
display: add back manage vfunc
This function will be overridden by GdmLocalDisplay to start the X server.
-rw-r--r--daemon/gdm-display.c11
-rw-r--r--daemon/gdm-display.h3
2 files changed, 12 insertions, 2 deletions
diff --git a/daemon/gdm-display.c b/daemon/gdm-display.c
index d7aa5a65..f479edc5 100644
--- a/daemon/gdm-display.c
+++ b/daemon/gdm-display.c
@@ -626,6 +626,12 @@ on_slave_started (GdmSlave *slave,
_gdm_display_set_status (self, GDM_DISPLAY_MANAGED);
}
+static void
+gdm_display_real_manage (GdmDisplay *self)
+{
+ gdm_slave_start (self->priv->slave);
+}
+
static gboolean
gdm_display_real_prepare (GdmDisplay *self)
{
@@ -674,7 +680,9 @@ on_list_cached_users_complete (GObject *proxy,
g_variant_unref (call_result);
}
- gdm_slave_start (self->priv->slave);
+ if (GDM_DISPLAY_GET_CLASS (self)->manage != NULL) {
+ GDM_DISPLAY_GET_CLASS (self)->manage (self);
+ }
}
static void
@@ -1381,6 +1389,7 @@ gdm_display_class_init (GdmDisplayClass *klass)
object_class->finalize = gdm_display_finalize;
klass->prepare = gdm_display_real_prepare;
+ klass->manage = gdm_display_real_manage;
g_object_class_install_property (object_class,
PROP_ID,
diff --git a/daemon/gdm-display.h b/daemon/gdm-display.h
index 39976b9d..b3685ee7 100644
--- a/daemon/gdm-display.h
+++ b/daemon/gdm-display.h
@@ -56,7 +56,8 @@ typedef struct
GObjectClass parent_class;
/* methods */
- gboolean (*prepare) (GdmDisplay *display);
+ gboolean (*prepare) (GdmDisplay *display);
+ void (*manage) (GdmDisplay *self);
} GdmDisplayClass;
typedef enum