]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blobdiff - src/seat.h
Name greeter mir sessions with a 'greeter' prefix, so the compositor can know
[sojka/lightdm.git] / src / seat.h
index af66fa0b6137057dd94f183cd8746861175e994a..667660ece1e7797cf50fe91d1ea12e207a460b0e 100644 (file)
@@ -37,17 +37,20 @@ typedef struct
 {
     GObjectClass parent_class;
 
+    gboolean (*get_start_local_sessions) (Seat *seat);
     void (*setup)(Seat *seat);
     gboolean (*start)(Seat *seat);
-    DisplayServer *(*create_display_server) (Seat *seat);
+    DisplayServer *(*create_display_server) (Seat *seat, const gchar *session_type, gboolean is_greeter);
+    gboolean (*display_server_supports_session_type) (Seat *seat, DisplayServer *display_server, const gchar *session_type);
     Greeter *(*create_greeter_session) (Seat *seat);
-    Session *(*create_session) (Seat *seat);
+    Session *(*create_session) (Seat *seat, Session *user_session);
     void (*set_active_session)(Seat *seat, Session *session);
     Session *(*get_active_session)(Seat *seat);
     void (*run_script)(Seat *seat, DisplayServer *display_server, Process *script);
     void (*stop)(Seat *seat);
 
     void (*session_added)(Seat *seat, Session *session);
+    void (*running_user_session)(Seat *seat, Session *session);
     void (*session_removed)(Seat *seat, Session *session);
     void (*stopped)(Seat *seat);
 } SeatClass;
@@ -60,8 +63,6 @@ Seat *seat_new (const gchar *module_name);
 
 void seat_set_property (Seat *seat, const gchar *name, const gchar *value);
 
-gboolean seat_has_property (Seat *seat, const gchar *name);
-
 const gchar *seat_get_string_property (Seat *seat, const gchar *name);
 
 gboolean seat_get_boolean_property (Seat *seat, const gchar *name);