Fix sleep/suspend sometimes not working

... from ksmserver-logout-greeter, by making the DBus calls synchronous.
wilder-5.25
Joe Breuer 4 years ago committed by David Edmundson
parent 85477b77d2
commit 1305fe0a87
  1. 9
      libkworkspace/sessionmanagementbackend.cpp

@ -137,7 +137,6 @@ void LogindSessionBackend::shutdown()
{ {
// logind will confirm credentials with the caller, if the app quits after sending this // logind will confirm credentials with the caller, if the app quits after sending this
// this may fail // this may fail
// its not really needed for suspend tasks where the calling app won't be closing
m_login1->PowerOff(true).waitForFinished(); m_login1->PowerOff(true).waitForFinished();
} }
@ -148,17 +147,19 @@ void LogindSessionBackend::reboot()
void LogindSessionBackend::suspend() void LogindSessionBackend::suspend()
{ {
m_login1->Suspend(true); // these need to be synchronous as well - ksmserver-logout-greeter specifically calls these
// and will quit immediately after
m_login1->Suspend(true).waitForFinished();
} }
void LogindSessionBackend::hybridSuspend() void LogindSessionBackend::hybridSuspend()
{ {
m_login1->HybridSleep(true); m_login1->HybridSleep(true).waitForFinished();
} }
void LogindSessionBackend::hibernate() void LogindSessionBackend::hibernate()
{ {
m_login1->Hibernate(true); m_login1->Hibernate(true).waitForFinished();;
} }
bool LogindSessionBackend::canShutdown() const bool LogindSessionBackend::canShutdown() const

Loading…
Cancel
Save