Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
KDE:Frameworks5:LTS
sddm
0002-Ignore-session-desktop-files-with-the-Hidd...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0002-Ignore-session-desktop-files-with-the-Hidden-propert.patch of Package sddm
From 1ba30952b942050fe55a9d9c76c615f72f6fcd04 Mon Sep 17 00:00:00 2001 From: Fabian Vogt <fabian@ritter-vogt.de> Date: Thu, 11 May 2017 09:34:31 +0200 Subject: [PATCH 2/3] Ignore session desktop files with the Hidden property set to true They are still read in the autologin case. Fixes issue #820 --- src/common/Session.cpp | 9 +++++++++ src/common/Session.h | 3 +++ src/greeter/SessionModel.cpp | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/common/Session.cpp b/src/common/Session.cpp index 5c2892a..4812d67 100644 --- a/src/common/Session.cpp +++ b/src/common/Session.cpp @@ -31,10 +31,12 @@ namespace SDDM { Session::Session() : m_valid(false) , m_type(UnknownSession) + , m_isHidden(false) { } Session::Session(Type type, const QString &fileName) + : Session() { setTo(type, fileName); } @@ -104,6 +106,11 @@ namespace SDDM { return m_desktopNames; } + bool Session::isHidden() const + { + return m_isHidden; + } + void Session::setTo(Type type, const QString &_fileName) { QString fileName(_fileName); @@ -168,6 +175,8 @@ namespace SDDM { m_tryExec = line.mid(8); if (line.startsWith(QLatin1String("DesktopNames="))) m_desktopNames = line.mid(13).replace(QLatin1Char(';'), QLatin1Char(':')); + if (line.startsWith(QLatin1String("Hidden="))) + m_isHidden = line.mid(7).toLower() == QLatin1String("true"); } file.close(); diff --git a/src/common/Session.h b/src/common/Session.h index 7ce1e9a..c8c527e 100644 --- a/src/common/Session.h +++ b/src/common/Session.h @@ -59,6 +59,8 @@ namespace SDDM { QString desktopSession() const; QString desktopNames() const; + bool isHidden() const; + void setTo(Type type, const QString &name); Session &operator=(const Session &other); @@ -76,6 +78,7 @@ namespace SDDM { QString m_tryExec; QString m_xdgSessionType; QString m_desktopNames; + bool m_isHidden; friend class SessionModel; }; diff --git a/src/greeter/SessionModel.cpp b/src/greeter/SessionModel.cpp index d3ace84..27e8c40 100644 --- a/src/greeter/SessionModel.cpp +++ b/src/greeter/SessionModel.cpp @@ -143,7 +143,7 @@ namespace SDDM { } } // add to sessions list - if (execAllowed) + if (!si->isHidden() && execAllowed) d->sessions.push_back(si); else delete si; -- 2.12.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor