[kdebase-workspace/f16] Resolves #753429 - battery plasmoid displays extremely incorrect information Resolves #766399 - KDE
Lukas Tinkl
ltinkl at fedoraproject.org
Mon Dec 12 19:59:08 UTC 2011
commit 8b98c2e942e2ad9f8db13405d71111ddddb3a07d
Author: Lukas Tinkl <lukas at kde.org>
Date: Mon Dec 12 20:59:00 2011 +0100
Resolves #753429 - battery plasmoid displays extremely incorrect information
Resolves #766399 - KDE battery monitor not working with new upower
kdebase-workspace-4.7.5-batteryplasmoid.patch | 57 +++++++++++++++++++++++++
kdebase-workspace.spec | 8 +++-
2 files changed, 64 insertions(+), 1 deletions(-)
---
diff --git a/kdebase-workspace-4.7.5-batteryplasmoid.patch b/kdebase-workspace-4.7.5-batteryplasmoid.patch
new file mode 100644
index 0000000..fcaf0fa
--- /dev/null
+++ b/kdebase-workspace-4.7.5-batteryplasmoid.patch
@@ -0,0 +1,57 @@
+commit 1b6f332c3c539a45f6ed5a85897ecf8a65fbb216
+Author: Lukas Tinkl <lukas at kde.org>
+Date: Mon Dec 12 20:03:43 2011 +0100
+
+ disconnect the battery signals when it gets removed
+
+ see https://bugzilla.redhat.com/show_bug.cgi?id=753429 and
+ https://bugzilla.redhat.com/show_bug.cgi?id=766399
+
+diff --git a/plasma/generic/dataengines/powermanagement/powermanagementengine.cpp b/plasma/generic/dataengines/powermanagement/powermanagementengine.cpp
+index a5344da..2bee9a7 100644
+--- a/plasma/generic/dataengines/powermanagement/powermanagementengine.cpp
++++ b/plasma/generic/dataengines/powermanagement/powermanagementengine.cpp
+@@ -105,8 +105,7 @@ QStringList PowermanagementEngine::sources() const
+ bool PowermanagementEngine::sourceRequestEvent(const QString &name)
+ {
+ if (name == "Battery") {
+- const QList<Solid::Device> listBattery =
+- Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString());
++ const QList<Solid::Device> listBattery = Solid::Device::listFromType(Solid::DeviceInterface::Battery);
+ m_batterySources.clear();
+
+ if (listBattery.isEmpty()) {
+@@ -160,7 +159,7 @@ bool PowermanagementEngine::sourceRequestEvent(const QString &name)
+ } else if (name == "AC Adapter") {
+ bool isPlugged = false;
+
+- const QList<Solid::Device> list_ac = Solid::Device::listFromType(Solid::DeviceInterface::AcAdapter, QString());
++ const QList<Solid::Device> list_ac = Solid::Device::listFromType(Solid::DeviceInterface::AcAdapter);
+ foreach (Solid::Device device_ac, list_ac) {
+ Solid::AcAdapter* acadapter = device_ac.as<Solid::AcAdapter>();
+ isPlugged |= acadapter->isPlugged();
+@@ -232,6 +231,11 @@ void PowermanagementEngine::updateAcPlugState(bool newState)
+ void PowermanagementEngine::deviceRemoved(const QString& udi)
+ {
+ if (m_batterySources.contains(udi)) {
++ Solid::Device device(udi);
++ Solid::Battery* battery = device.as<Solid::Battery>();
++ if (battery)
++ battery->disconnect();
++
+ const QString source = m_batterySources[udi];
+ m_batterySources.remove(udi);
+ removeSource(source);
+diff --git a/plasma/generic/dataengines/powermanagement/powermanagementengine.h b/plasma/generic/dataengines/powermanagement/powermanagementengine.h
+index 4dcc0d9..96ffd45 100644
+--- a/plasma/generic/dataengines/powermanagement/powermanagementengine.h
++++ b/plasma/generic/dataengines/powermanagement/powermanagementengine.h
+@@ -63,7 +63,7 @@ private:
+
+ QStringList m_sources;
+
+- QHash<QString, QString> m_batterySources;
++ QHash<QString, QString> m_batterySources; // <udi, Battery0>
+
+ };
+
diff --git a/kdebase-workspace.spec b/kdebase-workspace.spec
index 0325f7d..e9ab023 100644
--- a/kdebase-workspace.spec
+++ b/kdebase-workspace.spec
@@ -9,7 +9,7 @@
Summary: KDE Workspace
Name: kdebase-workspace
Version: 4.7.4
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2
Group: User Interface/Desktops
@@ -79,6 +79,7 @@ Patch50: kdebase-workspace-4.6.80-kde#171685.patch
Patch52: kdebase-workspace-4.7.0-bz#732830-login.patch
## upstream patches
+Patch100: kdebase-workspace-4.7.5-batteryplasmoid.patch
## plasma active patches
# adapted version of fix-wetab-power-button-freeze.patch
@@ -384,6 +385,7 @@ Requires: akonadi
%patch52 -p1 -b .bz#732830-login
# upstream patches
+%patch100 -p1 -b .batteryplasmoid
# plasma-active
%patch150 -p1 -b .fix-wetab-power-button-freeze
@@ -863,6 +865,10 @@ fi
%changelog
+* Mon Dec 12 2011 Lukas Tinkl <ltinkl at redhat.com> - 4.7.4-2
+- Resolves #753429 - battery plasmoid displays extremely incorrect information
+- Resolves #766399 - KDE battery monitor not working with new upower
+
* Fri Dec 02 2011 Rex Dieter <rdieter at fedoraproject.org> 4.7.4-1
- 4.7.4
More information about the scm-commits
mailing list