diff options
Diffstat (limited to 'kdesktop/lockeng.cpp')
| -rw-r--r-- | kdesktop/lockeng.cpp | 51 |
1 files changed, 16 insertions, 35 deletions
diff --git a/kdesktop/lockeng.cpp b/kdesktop/lockeng.cpp index 3de190484..fc3c9db6e 100644 --- a/kdesktop/lockeng.cpp +++ b/kdesktop/lockeng.cpp @@ -63,7 +63,7 @@ static void sigusr1_handler(int) { if (gbl_saverEngineEventHandler) { - gbl_saverEngineEventHandler->lockProcessExited(); + gbl_saverEngineEventHandler->lockCompleted(); } } @@ -71,7 +71,7 @@ static void sigusr2_handler(int) { if (gbl_saverEngineEventHandler) { - gbl_saverEngineEventHandler->lockProcessFullyActivated(); + gbl_saverEngineEventHandler->lockFullyActivated(); } } @@ -79,7 +79,7 @@ static void sigttin_handler(int) { if (gbl_saverEngineEventHandler) { - gbl_saverEngineEventHandler->lockProcessReady(); + gbl_saverEngineEventHandler->lockReady(); } } @@ -108,7 +108,7 @@ SaverEngine::SaverEngine() mSignalAction.sa_flags = 0; sigaction(SIGUSR2, &mSignalAction, 0L); - // handle SIGTTIN + // handle SIGTTIN (as custom user signal rather than its inherent meaning) mSignalAction.sa_handler= sigttin_handler; sigemptyset(&(mSignalAction.sa_mask)); sigaddset(&(mSignalAction.sa_mask), SIGTTIN); @@ -502,28 +502,6 @@ void SaverEngine::lockProcessFullyActivatedGUI() } } -void SaverEngine::lockProcessWaitingGUI() -{ - emitDCOPSignal("KDE_stop_screensaver()", TQByteArray()); - if (mEnabled) - { - if (mXAutoLock) - { - mXAutoLock->start(); - } - XForceScreenSaver(tqt_xdisplay(), ScreenSaverReset); - XSetScreenSaver(tqt_xdisplay(), mTimeout + 10, mXInterval, PreferBlanking, mXExposures); - } - processLockTransactions(); - - if (systemdSession && systemdSession->canSend()) - { - TQValueList<TQT_DBusData> params; - params << TQT_DBusData::fromBool(false); - TQT_DBusMessage reply = systemdSession->sendWithReply("SetIdleHint", params); - } -} - // XAutoLock has detected the required idle time. void SaverEngine::idleTimeout() { @@ -750,30 +728,30 @@ void SaverEngineEventHandler::terminateLockProcess() m_lockProcess.detach(); // don't kill it if we crash } -void SaverEngineEventHandler::lockProcessExited() +void SaverEngineEventHandler::lockCompleted() { - kdDebug(1204) << "SaverEngineEventHandler: lock exited" << endl; + kdDebug(1204) << "SaverEngineEventHandler: lock completed" << endl; - if (trinity_lockeng_sak_available) - { - startSAKProcess(); - } if (m_state == Waiting) { return; } m_state = Waiting; - TQTimer::singleShot(0, m_saverEngine, TQ_SLOT(lockProcessWaitingGUI())); + if (trinity_lockeng_sak_available) + { + startSAKProcess(); + } + TQTimer::singleShot(0, m_saverEngine, TQ_SLOT(stopLockProcessGUI())); } -void SaverEngineEventHandler::lockProcessFullyActivated() +void SaverEngineEventHandler::lockFullyActivated() { m_state = Saving; TQTimer::singleShot(0, m_saverEngine, TQ_SLOT(lockProcessFullyActivatedGUI())); } -void SaverEngineEventHandler::lockProcessReady() +void SaverEngineEventHandler::lockReady() { m_saverProcessReady = true; } @@ -819,6 +797,9 @@ void SaverEngineEventHandler::saveScreen() void SaverEngineEventHandler::slotLockProcessExited() { + // Clean up status after the lock process has exited + lockCompleted(); + m_lockProcessRestarting = true; bool abnormalExit = false; |
