Commit 0c30572a authored by Ray Strode's avatar Ray Strode

local-display-factory: provide override for disabling wayland

Since this wayland code is still pretty new, we need to provide
an exit tactic for users.

This commit introduces daemon/WaylandEnable which can be set to false,
to disable wayland support.

https://bugzilla.gnome.org/show_bug.cgi?id=744764
parent ab90bd38
......@@ -33,6 +33,7 @@ G_BEGIN_DECLS
#define GDM_KEY_TIMED_LOGIN_USER "daemon/TimedLogin"
#define GDM_KEY_TIMED_LOGIN_DELAY "daemon/TimedLoginDelay"
#define GDM_KEY_INITIAL_SETUP_ENABLE "daemon/InitialSetupEnable"
#define GDM_KEY_WAYLAND_ENABLE "daemon/WaylandEnable"
#define GDM_KEY_DEBUG "debug/Enable"
......
......@@ -34,6 +34,8 @@
#include "gdm-local-display-factory.h"
#include "gdm-local-display-factory-glue.h"
#include "gdm-settings-keys.h"
#include "gdm-settings-direct.h"
#include "gdm-display-store.h"
#include "gdm-local-display.h"
#include "gdm-legacy-display.h"
......@@ -474,7 +476,12 @@ static gboolean gdm_local_display_factory_sync_seats (GdmLocalDisplayFactory *fa
if (g_strcmp0 (seat, "seat0") == 0) {
is_initial = TRUE;
#ifdef ENABLE_WAYLAND_SUPPORT
session_type = "wayland";
gboolean wayland_enabled = FALSE;
if (gdm_settings_direct_get_boolean (GDM_KEY_INITIAL_SETUP_ENABLE, &wayland_enabled)) {
if (wayland_enabled) {
session_type = "wayland";
}
}
#endif
} else {
is_initial = FALSE;
......
......@@ -52,6 +52,11 @@
<signature>b</signature>
<default>true</default>
</schema>
<schema>
<key>daemon/WaylandEnable</key>
<signature>b</signature>
<default>true</default>
</schema>
<schema>
<key>security/AllowRemoteAutoLogin</key>
<signature>b</signature>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment