libs: ignore inactive sessions in KDisplayManager::localSessions()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2022-04-28 12:25:47 +03:00
parent 8e4faca4c4
commit 1f916560b9

View file

@ -241,6 +241,10 @@ bool KDisplayManager::localSessions(SessList &list)
if (isremote) {
continue;
}
const QString state = systemdiface.property("State").toString();
if (state != QLatin1String("online") && state != QLatin1String("active")) {
continue;
}
SessEnt sessionentity;
sessionentity.display = systemdiface.property("Display").toString();
sessionentity.user = systemdiface.property("Name").toString();
@ -278,6 +282,10 @@ bool KDisplayManager::localSessions(SessList &list)
if (!islocal) {
continue;
}
const QString state = consolekitiface.property("session-state").toString();
if (state != QLatin1String("online") && state != QLatin1String("active")) {
continue;
}
SessEnt sessionentity;
sessionentity.display = consolekitiface.property("x11-display").toString();
sessionentity.user = KUser(K_UID(consolekitiface.property("unix-user").toUInt())).loginName();