(*** This bug was imported into bugs.kde.org ***) Package: unknown Version: KDE2RC2 Severity: wishlist Kde v1.x could lock the screen when mouse was near the screen corner for five seconds. That was a nice feature I miss in the new version of kde (at least I haven\'t found how to activate it) Thanks. (submitted via bugs.kde.org)
*** Bug 53391 has been marked as a duplicate of this bug. ***
*** Bug 27145 has been marked as a duplicate of this bug. ***
it should also disable the screensaver by placing the mouse in another corner...
The xautolock code is in. See kdebase/kdesktop/xautolock.cc for details, search for '#13360'.
So... does this mean that this feature will be available in future KDE releases (enabled, I'd guess, from the configuration panel), or does this issue still need votes?
> does this mean that this feature will be available in future KDE releases Yes, this should be in KDE 3.2. > or does this issue still need votes? No, that will make absolutely no difference to when I implement it :)
Subject: Re: Thank you for your bug report. The feature that you requested has been implemented in the latest development (CVS) version of KDE. The feature request will be closed.
How about actually closing it then :) ?
Where should the GUI to configure it be found? With 3.2 final, i cant find it. shouldnt it be somewhere in the screensaver config dialogue?
Sadly this feature didn't make it into KDE 3.2.
*** Bug 76602 has been marked as a duplicate of this bug. ***
I've got kde from cvs, and the auto-lock feature works fine. But what about auto-avoid-lock feature?
*** Bug 67509 has been marked as a duplicate of this bug. ***
why is it in CVS, but not in kde 3.2.2?
*** Bug 84093 has been marked as a duplicate of this bug. ***
its also not in 3.2.3, but still in cvs? will it be in 3.3?
CVS commit by howells: OK. The KCM is finished for bug 13360. Now I just need to hack kdesktop to understand the new settings. Unfortunately valgrind was not much help either but I owe almer a beer or two :) CCMAIL: 13360@bugs.kde.org M +38 -85 advanceddialog.cpp 1.3 M +2 -10 advanceddialog.h 1.3
CVS commit by howells: *FANFARE* Bug 13360 is finally implemented and bug free. I hope. Still to do: maybe write a kconf_update script to migrate settings. CCMAIL: 13360-done@bugs.kde.org M +38 -4 lockeng.cc 1.66 M +2 -1 lockeng.h 1.26 M +0 -12 xautolock.cc 1.22 --- kdebase/kdesktop/lockeng.cc #1.65:1.66 @@ -185,8 +185,16 @@ void SaverEngine::configure() mDPMS = config->readBoolEntry("DPMS-dependent", false); #endif - xautolock_corners[ 0 ] = config->readBoolEntry("LockCornerTopLeft", false) ? ca_forceLock :ca_nothing; - xautolock_corners[ 1 ] = config->readBoolEntry("LockCornerTopRight", false) ? ca_forceLock :ca_nothing; - xautolock_corners[ 2 ] = config->readBoolEntry("LockCornerBottomLeft", false) ? ca_forceLock :ca_nothing; - xautolock_corners[ 3 ] = config->readBoolEntry("LockCornerBottomRight", false) ? ca_forceLock :ca_nothing; + + + + int action; + action = config->readBoolEntry("ActionTopLeft", 0); + xautolock_corners[0] = applyManualSettings(action); + action = config->readBoolEntry("ActionTopRight", 0); + xautolock_corners[1] = applyManualSettings(action); + action = config->readBoolEntry("ActionBottomLeft", 0); + xautolock_corners[2] = applyManualSettings(action); + action = config->readBoolEntry("ActionBottomRight", 0); + xautolock_corners[3] = applyManualSettings(action); enable( e ); @@ -317,2 +325,28 @@ void SaverEngine::idleTimeout() startLockProcess( DefaultLock ); } + +xautolock_corner_t SaverEngine::applyManualSettings(int action) +{ + if (action == 0) + { + return ca_nothing; + kdDebug() << "no lock" << endl; + } + else + if (action == 1) + { + return ca_forceLock; + kdDebug() << "lock screen" << endl; + } + else + if (action == 2) + { + return ca_dontLock; + kdDebug() << "prevent lock" << endl; + } + else + { + return ca_nothing; + kdDebug() << "no lock nothing" << endl; + } +} --- kdebase/kdesktop/lockeng.h #1.25:1.26 @@ -13,4 +13,5 @@ #include "KScreensaverIface.h" #include "xautolock.h" +#include "xautolock_c.h" //=========================================================================== @@ -80,4 +80,5 @@ protected: void stopLockProcess(); bool handleKeyPress(XKeyEvent *xke); + xautolock_corner_t applyManualSettings(int); protected: --- kdebase/kdesktop/xautolock.cc #1.21:1.22 @@ -48,16 +48,4 @@ XAutoLock::XAutoLock() xautolock_useXidle = 0; xautolock_useMit = 0; - // code for corners (see #13360) - // setting a corner to ca_forceLock or ca_dontLock - // makes that corner start screensaver or prevent - // screensaver start - // the order is topleft, topright, bottomleft, bottomright - // So when you add GUI for this, add a method changing these values. -#if 0 //now we have a GUI to configure it. => use value load to kconfig and not re-initialise value - xautolock_corners[ 0 ] = ca_nothing; - xautolock_corners[ 1 ] = ca_nothing; - xautolock_corners[ 2 ] = ca_nothing; - xautolock_corners[ 3 ] = ca_nothing; -#endif #ifdef HAVE_XIDLE useXidle = XidleQueryExtension( qt_xdisplay(), &dummy, &dummy );
If this is the correct place to add a comment: Desktop corner screensaver autolock hasn't worked for me in either KDE 3.3 or, presently, in KDE 3.3.1 (compiled from source, gcc 3.3.4 / Slackware 10). I can keep the mouse pointer still in the designated activiation corner for as long as I like but nothing happens.
and when will the aforementioned change actually appear in a released version? in 3.3.1, all i can do is set any corner of the desktop to "lock now".
The feature will be in KDE 3.4. It is unlikely to be backported to the 3.3 series.
I really don't know what's going on now. In KDE 3.4 one have only options for corners: Lock, and block lock. But it seems that locking is not working. But that doesn't matter. I though that this wishlist was about turning on screensaver at once but moving cursor in one of the edges. Without blocking screen.