[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace
From: Oswald Buddenhagen <ossi () kde ! org>
Date: 2010-10-24 12:03:35
Message-ID: 20101024120335.5B989AC89A () svn ! kde ! org
[Download RAW message or body]
SVN commit 1189267 by ossi:
make initial lock pop up the unlock dialog immediately
this is kind of a readiness notification.
FEATURE: 249822
FIXED-IN: 4.6
M +5 -1 krunner/lock/lockprocess.cc
M +2 -1 krunner/lock/lockprocess.h
M +2 -1 krunner/lock/main.cc
M +1 -1 startkde.cmake
--- trunk/KDE/kdebase/workspace/krunner/lock/lockprocess.cc #1189266:1189267
@@ -137,6 +137,7 @@
//
LockProcess::LockProcess(bool child, bool useBlankOnly)
: QWidget(0L, Qt::X11BypassWindowManagerHint),
+ mInitialLock(false),
mLocked(false),
mBusy(false),
mPlasmaDBus(0),
@@ -320,7 +321,7 @@
}
//---------------------------------------------------------------------------
-bool LockProcess::lock()
+bool LockProcess::lock(bool initial)
{
if (startSaver()) {
// In case of a forced lock we don't react to events during
@@ -329,6 +330,7 @@
// the screensaver kicks in because the user moved the mouse after
// selecting "lock screen", that looks really untidy.
mBusy = true;
+ mInitialLock = initial;
if (startLock())
{
QTimer::singleShot(1000, this, SLOT(slotDeadTimePassed()));
@@ -342,6 +344,8 @@
//---------------------------------------------------------------------------
void LockProcess::slotDeadTimePassed()
{
+ if (mInitialLock)
+ quit();
mBusy = false;
}
--- trunk/KDE/kdebase/workspace/krunner/lock/lockprocess.h #1189266:1189267
@@ -55,7 +55,7 @@
/**
* start the screensaver locked
*/
- bool lock();
+ bool lock(bool initial = false);
/**
* start the screensaver unlocked
@@ -186,6 +186,7 @@
static QVariant getConf(void *ctx, const char *key, const QVariant &dflt);
bool loadGreetPlugin();
+ bool mInitialLock;
bool mLocked;
int mLockGrace;
int mPriority;
--- trunk/KDE/kdebase/workspace/krunner/lock/main.cc #1189266:1189267
@@ -64,6 +64,7 @@
KCmdLineOptions options;
options.add("forcelock", ki18n("Force session locking"));
options.add("dontlock", ki18n("Only start screen saver"));
+ options.add("showunlock", ki18n("Immediately show the unlock dialog"));
options.add("blank", ki18n("Only use the blank screen saver"));
options.add("plasmasetup", ki18n("start with plasma unlocked for configuring"));
options.add("daemon", ki18n("Fork into the background after starting up"));
@@ -171,7 +172,7 @@
bool rt;
bool sig = false;
if (!child && (args->isSet("forcelock"))) {
- rt = process.lock();
+ rt = process.lock(args->isSet("showunlock"));
sig = true;
}
else if( child || args->isSet( "dontlock" ))
--- trunk/KDE/kdebase/workspace/startkde.cmake #1189266:1189267
@@ -351,7 +351,7 @@
# If the session should be locked from the start (locked autologin),
# lock now and do the rest of the KDE startup underneath the locker.
if test -n "$dl"; then
- if ! kwrapper4 kscreenlocker --forcelock --daemon; then
+ if ! kwrapper4 kscreenlocker --forcelock --showunlock --daemon; then
echo 'startkde: Initial session lock failed. Terminating for security reasons.' 1>&2
exit 1
fi
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic