aboutsummaryrefslogtreecommitdiff
path: root/src/session-list.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/session-list.vala')
-rw-r--r--src/session-list.vala13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/session-list.vala b/src/session-list.vala
index 3d92ce7..5149cc5 100644
--- a/src/session-list.vala
+++ b/src/session-list.vala
@@ -59,6 +59,12 @@ public class SessionPrompt : PromptBox
}
}
/* Pick the default session (if different from selected session) and add it as next item.
+ *
+ * In SUSE and derivatives, LightDM ships a distro-specific patch that hides the default.desktop
+ * (and other) symlink(s) from LightDM.
+ * https://build.opensuse.org/projects/X11:Utilities/packages/lightdm/files/lightdm-ignore-known-symlink-sessions.patch?expand=1
+ *
+ * So the next if-clause won't take effect on SUSE-based systems.
*/
if (session != default_session) {
foreach (var dm_session in dm_sessions)
@@ -182,6 +188,7 @@ public class SessionList : GreeterList
return "kde_badge.png";
case "i3-with-shmlog":
return "i3_badge.png";
+ case "default":
case "lightdm-xsession":
return "xsession_badge.png";
case "LXDE":
@@ -238,6 +245,12 @@ public class SessionList : GreeterList
{
foreach (var real_session in sessions)
{
+ // Skip the default session
+ if (real_session.key == "default") {
+ continue;
+ }
+
+ // If we find the real session, use its key value for badge icon loading...
if (real_session.name == find_session.name)
{
session = real_session.key;