From 06f2c11087a3da5ddccab19ec37b506cc746f509 Mon Sep 17 00:00:00 2001 From: tpearson Date: Tue, 13 Sep 2011 04:41:15 +0000 Subject: [PATCH] Fix desktop switch while lock process is engaged git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1253075 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kdesktop/lock/lockprocess.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/kdesktop/lock/lockprocess.cc b/kdesktop/lock/lockprocess.cc index 52ea871b2..3e83c62a7 100644 --- a/kdesktop/lock/lockprocess.cc +++ b/kdesktop/lock/lockprocess.cc @@ -131,7 +131,7 @@ extern bool trinity_desktop_lock_forced; bool trinity_desktop_lock_autohide_lockdlg = TRUE; #define ENABLE_CONTINUOUS_LOCKDLG_DISPLAY \ -mForceContinualLockDisplayTimer->start(100, FALSE); \ +if (!mForceContinualLockDisplayTimer->isActive()) mForceContinualLockDisplayTimer->start(100, FALSE); \ trinity_desktop_lock_autohide_lockdlg = FALSE; #define DISABLE_CONTINUOUS_LOCKDLG_DISPLAY \ @@ -141,10 +141,10 @@ trinity_desktop_lock_autohide_lockdlg = TRUE; //=========================================================================== // // Screen saver handling process. Handles screensaver window, -// starting screensaver hacks, and password entry.f +// starting screensaver hacks, and password entry. // LockProcess::LockProcess(bool child, bool useBlankOnly) - : TQWidget(0L, "saver window", (trinity_desktop_lock_use_system_modal_dialogs?((WFlags)(WStyle_StaysOnTop|WStyle_Customize | WStyle_NoBorder)):((WFlags)WX11BypassWM))), + : TQWidget(0L, "saver window", (trinity_desktop_lock_use_system_modal_dialogs?((WFlags)(WStyle_StaysOnTop|WStyle_Customize|WStyle_NoBorder)):((WFlags)WX11BypassWM))), mOpenGLVisual(0), child_saver(child), mParent(0), @@ -1250,6 +1250,7 @@ void LockProcess::suspend() if (trinity_desktop_lock_use_system_modal_dialogs) { mSuspended = true; stopHack(); + ENABLE_CONTINUOUS_LOCKDLG_DISPLAY } else { TQString hackStatus;