x_server_local_set_layout (x_server, layout);
x_server_local_set_xdg_seat (x_server, seat_get_name (seat));
+ if (strcmp (seat_get_name (seat), "seat0") != 0)
+ x_server_local_set_sharevts (x_server, TRUE);
config_file = seat_get_string_property (seat, "xserver-config");
if (config_file)
/* Value for -seat argument */
gchar *xdg_seat;
+ /* TRUE if should share VT with other X server */
+ gboolean sharevts;
+
/* TRUE if TCP/IP connections are allowed */
gboolean allow_tcp;
server->priv->xdg_seat = g_strdup (xdg_seat);
}
+void
+x_server_local_set_sharevts (XServerLocal *server, gboolean sharevts)
+{
+ g_return_if_fail (server != NULL);
+ server->priv->sharevts = sharevts;
+}
+
void
x_server_local_set_allow_tcp (XServerLocal *server, gboolean allow_tcp)
{
if (server->priv->xdg_seat)
g_string_append_printf (command, " -seat %s", server->priv->xdg_seat);
+ if (server->priv->sharevts)
+ g_string_append (command, " -sharevts");
+
write_authority_file (server);
if (server->priv->authority_file)
g_string_append_printf (command, " -auth %s", server->priv->authority_file);
void x_server_local_set_xdg_seat (XServerLocal *server, const gchar *xdg_seat);
+void x_server_local_set_sharevts (XServerLocal *server, gboolean sharevts);
+
void x_server_local_set_allow_tcp (XServerLocal *server, gboolean allow_tcp);
void x_server_local_set_xdmcp_server (XServerLocal *server, const gchar *hostname);
#?*ADD-SEAT ID=seat1
# seat1 starts
-#?XSERVER-1 START SEAT=seat1
+#?XSERVER-1 START SEAT=seat1 SHAREVTS=TRUE
#?*XSERVER-1 INDICATE-READY
#?XSERVER-1 INDICATE-READY
#?XSERVER-1 ACCEPT-CONNECT
gchar *seat = NULL;
gchar *mir_id = NULL;
gchar *lock_filename;
+ gboolean sharevts = FALSE;
int lock_file;
GString *status_text;
seat = argv[i+1];
i++;
}
+ else if (strcmp (arg, "-sharevts") == 0)
+ {
+ sharevts = TRUE;
+ }
else if (strcmp (arg, "-mir") == 0)
{
mir_id = argv[i+1];
"-broadcast Broadcast for XDMCP\n"
"-port port-num UDP port number to send messages to\n"
"-seat string seat to run on\n"
+ "-sharevts share VTs with another X server\n"
"-mir id Mir ID to use\n"
"-mirSocket name Mir socket to use\n"
"vtxx Use virtual terminal xx instead of the next available\n",
g_string_append_printf (status_text, " VT=%d", vt_number);
if (seat != NULL)
g_string_append_printf (status_text, " SEAT=%s", seat);
+ if (sharevts)
+ g_string_append (status_text, " SHAREVTS=TRUE");
if (mir_id != NULL)
g_string_append_printf (status_text, " MIR-ID=%s", mir_id);
status_notify ("%s", status_text->str);