Adding upstream version 0.9.0+20150911.

upstream/0.9.0+20150911
Alf Gaida 9 years ago
parent fbf63af56e
commit 8b8061b982

@ -34,8 +34,10 @@
using namespace LXQt;
Power::Power(QObject *parent) :
QObject(parent)
QObject(parent),
mScreenSaver(this)
{
connect(&mScreenSaver, SIGNAL(done()), &mLoop, SLOT(quit()));
mProviders.append(new CustomProvider(this));
mProviders.append(new SystemdProvider(this));
mProviders.append(new UPowerProvider(this));
@ -66,11 +68,18 @@ bool Power::doAction(Power::Action action)
{
foreach(PowerProvider* provider, mProviders)
{
if (provider->canAction(action) &&
provider->doAction(action)
)
if (provider->canAction(action))
{
return true;
if (action == PowerSuspend || action == PowerHibernate)
{
mScreenSaver.lockScreen();
mLoop.exec();
}
if (provider->doAction(action))
{
return true;
}
return false;
}
}
return false;

@ -31,6 +31,8 @@
#include <QObject>
#include <QList>
#include <QEventLoop>
#include "lxqtscreensaver.h"
#include "lxqtglobals.h"
namespace LXQt
@ -101,6 +103,8 @@ public slots:
private:
QList<PowerProvider*> mProviders;
LXQt::ScreenSaver mScreenSaver;
QEventLoop mLoop;
};
} // namespace LXQt

Loading…
Cancel
Save