~robert-ancell/lightdm/private-mir-connection-merge

« back to all changes in this revision

Viewing changes to src/seat-xremote.c

  • Committer: Robert Ancell
  • Date: 2013-07-23 02:24:45 UTC
  • mfrom: (1723 trunk)
  • mto: This revision was merged to the branch mainline in revision 1741.
  • Revision ID: robert.ancell@canonical.com-20130723022445-gpaq8vtkp4hods7r
Merge with trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
#include "seat-xremote.h"
15
15
#include "configuration.h"
16
16
#include "xserver-remote.h"
 
17
#include "xgreeter.h"
17
18
#include "xsession.h"
18
19
 
19
20
G_DEFINE_TYPE (SeatXRemote, seat_xremote, SEAT_TYPE);
50
51
    return DISPLAY_SERVER (xserver);
51
52
}
52
53
 
 
54
static Greeter *
 
55
seat_xremote_create_greeter_session (Seat *seat)
 
56
{
 
57
    XGreeter *greeter_session;
 
58
 
 
59
    greeter_session = xgreeter_new ();
 
60
    session_set_env (SESSION (greeter_session), "XDG_SEAT", "seat0");
 
61
 
 
62
    return GREETER (greeter_session);
 
63
}
 
64
 
53
65
static Session *
54
 
seat_xremote_create_session (Seat *seat, Display *display)
 
66
seat_xremote_create_session (Seat *seat)
55
67
{
56
 
    XServerRemote *xserver;
57
 
    XSession *session;
58
 
 
59
 
    xserver = XSERVER_REMOTE (display_get_display_server (display));
60
 
 
61
 
    session = xsession_new ();
62
 
    session_set_remote_host_name (SESSION (session), xserver_get_hostname (XSERVER (xserver)));
63
 
 
64
 
    return SESSION (session);
 
68
    return SESSION (xsession_new ());
65
69
}
66
70
 
67
71
static void
68
 
seat_xremote_run_script (Seat *seat, Display *display, Process *script)
 
72
seat_xremote_run_script (Seat *seat, DisplayServer *display_server, Process *script)
69
73
{
70
74
    XServerRemote *xserver;
71
75
 
72
 
    xserver = XSERVER_REMOTE (display_get_display_server (display));
 
76
    xserver = XSERVER_REMOTE (display_server);
73
77
    process_set_env (script, "DISPLAY", xserver_get_address (XSERVER (xserver)));  
74
78
    process_set_env (script, "REMOTE_HOST", xserver_get_hostname (XSERVER (xserver)));
75
79
 
76
 
    SEAT_CLASS (seat_xremote_parent_class)->run_script (seat, display, script);
 
80
    SEAT_CLASS (seat_xremote_parent_class)->run_script (seat, display_server, script);
77
81
}
78
82
 
79
83
static void
88
92
 
89
93
    seat_class->setup = seat_xremote_setup;
90
94
    seat_class->create_display_server = seat_xremote_create_display_server;
 
95
    seat_class->create_greeter_session = seat_xremote_create_greeter_session;
91
96
    seat_class->create_session = seat_xremote_create_session;
92
97
    seat_class->run_script = seat_xremote_run_script;
93
98
}