summaryrefslogtreecommitdiff
path: root/extra/kdebase-workspace/logind-support2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'extra/kdebase-workspace/logind-support2.patch')
-rw-r--r--extra/kdebase-workspace/logind-support2.patch124
1 files changed, 0 insertions, 124 deletions
diff --git a/extra/kdebase-workspace/logind-support2.patch b/extra/kdebase-workspace/logind-support2.patch
deleted file mode 100644
index e36757f6a..000000000
--- a/extra/kdebase-workspace/logind-support2.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-commit 80e9e6e48ff5b84962f3a8543ee06bcd4f122623
-Author: Lukáš Tinkl <lukas@kde.org>
-Date: Tue Oct 30 11:32:52 2012 +0100
-
- move systemd inhibition initialization to a slot
-
- and call it on resume. It looks like the filedescriptor
- goes away when you suspend so we need to recreate it.
-
- BUG: 307412
-
-diff --git a/powerdevil/daemon/powerdevilcore.cpp b/powerdevil/daemon/powerdevilcore.cpp
-index df79667..7f24cbb 100644
---- a/powerdevil/daemon/powerdevilcore.cpp
-+++ b/powerdevil/daemon/powerdevilcore.cpp
-@@ -127,8 +127,6 @@ void Core::onBackendReady()
- this, SLOT(onAcAdapterStateChanged(PowerDevil::BackendInterface::AcAdapterState)));
- connect(m_backend, SIGNAL(batteryRemainingTimeChanged(qulonglong)),
- this, SLOT(onBatteryRemainingTimeChanged(qulonglong)));
-- connect(m_backend, SIGNAL(resumeFromSuspend()),
-- this, SLOT(onResumeFromSuspend()));
- connect(KIdleTime::instance(), SIGNAL(timeoutReached(int,int)),
- this, SLOT(onKIdleTimeoutReached(int,int)));
- connect(KIdleTime::instance(), SIGNAL(resumingFromIdle()),
-@@ -139,6 +137,9 @@ void Core::onBackendReady()
- // Set up the policy agent
- PowerDevil::PolicyAgent::instance()->init();
-
-+ connect(m_backend, SIGNAL(resumeFromSuspend()),
-+ this, SLOT(onResumeFromSuspend()));
-+
- // Initialize the action pool, which will also load the needed startup actions.
- PowerDevil::ActionPool::instance()->init(this);
-
-@@ -601,6 +602,7 @@ void Core::onResumeFromSuspend()
- "/ScreenSaver",
- QDBusConnection::sessionBus());
- iface.SimulateUserActivity();
-+ PowerDevil::PolicyAgent::instance()->setupSystemdInhibition();
-
- emit resumingFromSuspend();
- }
-diff --git a/powerdevil/daemon/powerdevilpolicyagent.cpp b/powerdevil/daemon/powerdevilpolicyagent.cpp
-index 70588db..0777846 100644
---- a/powerdevil/daemon/powerdevilpolicyagent.cpp
-+++ b/powerdevil/daemon/powerdevilpolicyagent.cpp
-@@ -88,6 +88,7 @@ PolicyAgent *PolicyAgent::instance()
- PolicyAgent::PolicyAgent(QObject* parent)
- : QObject(parent)
- , m_sdAvailable(false)
-+ , m_systemdInhibitFd(-1)
- , m_ckAvailable(false)
- , m_sessionIsBeingInterrupted(false)
- , m_lastCookie(0)
-@@ -223,23 +224,7 @@ void PolicyAgent::onSessionHandlerRegistered(const QString & serviceName)
-
- onActiveSessionChanged(m_activeSessionPath);
-
-- // inhibit systemd handling of power/sleep/lid buttons
-- // http://www.freedesktop.org/wiki/Software/systemd/inhibit
-- kDebug() << "fd passing available:" << bool(managerIface.connection().connectionCapabilities() & QDBusConnection::UnixFileDescriptorPassing);
--
-- QVariantList args;
-- args << "handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch"; // what
-- args << "PowerDevil"; // who
-- args << "KDE handles power events"; // why
-- args << "block"; // mode
-- QDBusPendingReply<QDBusUnixFileDescriptor> desc = managerIface.asyncCallWithArgumentList("Inhibit", args);
-- desc.waitForFinished();
-- if (desc.isValid()) {
-- m_systemdInhibitFd = desc.value();
-- kDebug() << "systemd powersave events handling inhibited, descriptor:" << m_systemdInhibitFd.fileDescriptor();
-- }
-- else
-- kWarning() << "failed to inhibit systemd powersave handling";
-+ setupSystemdInhibition();
-
- kDebug() << "systemd support initialized";
- } else if (serviceName == CONSOLEKIT_SERVICE) {
-@@ -552,6 +537,31 @@ void PolicyAgent::releaseAllInhibitions()
- }
- }
-
-+void PolicyAgent::setupSystemdInhibition()
-+{
-+ if (m_systemdInhibitFd.fileDescriptor() != -1)
-+ return;
-+
-+ // inhibit systemd handling of power/sleep/lid buttons
-+ // http://www.freedesktop.org/wiki/Software/systemd/inhibit
-+ QDBusInterface managerIface(SYSTEMD_LOGIN1_SERVICE, SYSTEMD_LOGIN1_PATH, SYSTEMD_LOGIN1_MANAGER_IFACE, QDBusConnection::systemBus());
-+ kDebug() << "fd passing available:" << bool(managerIface.connection().connectionCapabilities() & QDBusConnection::UnixFileDescriptorPassing);
-+
-+ QVariantList args;
-+ args << "handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch"; // what
-+ args << "PowerDevil"; // who
-+ args << "KDE handles power events"; // why
-+ args << "block"; // mode
-+ QDBusPendingReply<QDBusUnixFileDescriptor> desc = managerIface.asyncCallWithArgumentList("Inhibit", args);
-+ desc.waitForFinished();
-+ if (desc.isValid()) {
-+ m_systemdInhibitFd = desc.value();
-+ kDebug() << "systemd powersave events handling inhibited, descriptor:" << m_systemdInhibitFd.fileDescriptor();
-+ }
-+ else
-+ kWarning() << "failed to inhibit systemd powersave handling";
-+}
-+
- }
-
- #include "powerdevilpolicyagent.moc"
-diff --git a/powerdevil/daemon/powerdevilpolicyagent.h b/powerdevil/daemon/powerdevilpolicyagent.h
-index a046497..f1e8c03 100644
---- a/powerdevil/daemon/powerdevilpolicyagent.h
-+++ b/powerdevil/daemon/powerdevilpolicyagent.h
-@@ -74,6 +74,8 @@ public:
-
- RequiredPolicies unavailablePolicies();
-
-+ void setupSystemdInhibition();
-+
- public Q_SLOTS:
- // Exported slots
- uint AddInhibition(uint types, const QString &appName, const QString &reason);