diff options
author | Timothy Pearson <[email protected]> | 2013-08-08 00:45:07 -0500 |
---|---|---|
committer | Timothy Pearson <[email protected]> | 2013-08-08 00:45:07 -0500 |
commit | 6a40ac081b1f96db4764803305fa442f25b5069e (patch) | |
tree | b3a75677b465d8768859a076e7fb1c1f9c2e00d1 /kdesktop/lock/lockprocess.cc | |
parent | da560698f1098a4ebca54ead7436110003f2a716 (diff) | |
download | tdebase-6a40ac081b1f96db4764803305fa442f25b5069e.tar.gz tdebase-6a40ac081b1f96db4764803305fa442f25b5069e.zip |
Ensure screen is fully hidden before returning from kdestop lock dcop call
Diffstat (limited to 'kdesktop/lock/lockprocess.cc')
-rw-r--r-- | kdesktop/lock/lockprocess.cc | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/kdesktop/lock/lockprocess.cc b/kdesktop/lock/lockprocess.cc index aa4bdd570..f482dcd17 100644 --- a/kdesktop/lock/lockprocess.cc +++ b/kdesktop/lock/lockprocess.cc @@ -559,7 +559,7 @@ bool LockProcess::lock() tqApp->processEvents(); #endif - if (startSaver()) { + if (startSaver(true)) { // In case of a forced lock we don't react to events during // the dead-time to give the screensaver some time to activate. // That way we don't accidentally show the password dialog before @@ -1322,7 +1322,7 @@ void LockProcess::setTransparentBackgroundARGB() // // Start the screen saver. // -bool LockProcess::startSaver() +bool LockProcess::startSaver(bool notify_ready) { if (!child_saver && !grabInput()) { @@ -1370,6 +1370,10 @@ bool LockProcess::startSaver() erase(); } + if (notify_ready) { + saverReady(); + } + if (trinity_desktop_lock_in_sec_dlg == FALSE) { if (trinity_desktop_lock_delay_screensaver_start && trinity_desktop_lock_forced && trinity_desktop_lock_use_system_modal_dialogs) { ENABLE_CONTINUOUS_LOCKDLG_DISPLAY @@ -2777,6 +2781,11 @@ void LockProcess::fullyOnline() { } } +void LockProcess::saverReady() { + DCOPRef ref( "kdesktop", "KScreensaverIface"); + ref.send( "saverLockReady" ); +} + //=========================================================================== // // Control pipe handler |