[kde-workspace/f17] more work on plasma clock widget/locale crash (kde#299237)

Rex Dieter rdieter at fedoraproject.org
Wed May 2 16:20:52 UTC 2012


commit 14162dec5868dda4fc9e434c66381c0d65255f03
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Wed May 2 11:23:14 2012 -0500

    more work on plasma clock widget/locale crash (kde#299237)

 calendartable-locale-crash.patch |   50 ++++++++++++++++++++++++++++++++++++++
 kde-workspace.spec               |    7 ++++-
 2 files changed, 56 insertions(+), 1 deletions(-)
---
diff --git a/calendartable-locale-crash.patch b/calendartable-locale-crash.patch
new file mode 100644
index 0000000..266280b
--- /dev/null
+++ b/calendartable-locale-crash.patch
@@ -0,0 +1,50 @@
+diff --git a/libs/plasmaclock/calendartable.cpp b/libs/plasmaclock/calendartable.cpp
+index 47ffd9d..745e92f 100644
+--- a/libs/plasmaclock/calendartable.cpp
++++ b/libs/plasmaclock/calendartable.cpp
+@@ -101,6 +101,7 @@ class CalendarTablePrivate
+             delayedPopulationTimer->setInterval(0);
+             delayedPopulationTimer->setSingleShot(true);
+             QObject::connect(delayedPopulationTimer, SIGNAL(timeout()), q, SLOT(populateCalendar()));
++            QObject::connect(KGlobalSettings::self(), SIGNAL(settingsChanged(int)), q, SLOT(settingsChanged(int)));
+
+             setDate(initialDate);
+         }
+@@ -362,6 +363,7 @@ class CalendarTablePrivate
+         void populateHolidays();
+         void populateEvents();
+         void populateCalendar();
++        void settingsChanged(int category);
+
+         CalendarTable *q;
+         QString calendarType;
+@@ -819,6 +821,17 @@ void CalendarTablePrivate::populateEvents()
+     delayedPopulationTimer->start();
+ }
+
++void CalendarTablePrivate::settingsChanged(int category)
++{
++    if (category != KGlobalSettings::SETTINGS_LOCALE) {
++        return;
++    }
++
++    calendar = KGlobal::locale()->calendar();
++
++    q->update();
++}
++
+ void CalendarTable::dataUpdated(const QString &source, const Plasma::DataEngine::Data &data)
+ {
+     Q_UNUSED(source)
+diff --git a/libs/plasmaclock/calendartable.h b/libs/plasmaclock/calendartable.h
+index 969e4fc..8678593 100644
+--- a/libs/plasmaclock/calendartable.h
++++ b/libs/plasmaclock/calendartable.h
+@@ -127,6 +127,7 @@ private:
+     CalendarTablePrivate* const d;
+
+     Q_PRIVATE_SLOT(d, void populateCalendar())
++    Q_PRIVATE_SLOT(d, void settingsChanged(int category))
+ };
+
+ }
diff --git a/kde-workspace.spec b/kde-workspace.spec
index 61e462b..efc1b01 100644
--- a/kde-workspace.spec
+++ b/kde-workspace.spec
@@ -14,7 +14,7 @@
 Summary: KDE Workspace
 Name:    kde-workspace
 Version: 4.8.3
-Release: 2%{?dist}
+Release: 3%{?dist}
 
 License: GPLv2
 URL:     https://projects.kde.org/projects/kde/kde-workspace
@@ -107,6 +107,7 @@ Patch58: kde-workspace-4.8.0-systemd-shutdown.patch
 # clock-widget/locale crasher
 # https://projects.kde.org/projects/kde/kde-workspace/repository/revisions/9f3612f9adc290ab7c242d03c496afeed6be89d7
 Patch100: kde-workspace-4.8.3-plasma_clock_widget_locale.patch
+Patch101: calendartable-locale-crash.patch
 
 ## plasma active patches
 # adapted version of wac-html-widgets.patch
@@ -432,6 +433,7 @@ Requires: akonadi
 
 # upstream patches
 %patch100 -p1 -b .plasma_clock_widget_locale
+%patch101 -p1 -b .calendartable-locale-crash
 
 # plasma-active
 %patch153 -p1 -b .wac-html-widgets
@@ -972,6 +974,9 @@ fi
 
 
 %changelog
+* Wed May 02 2012 Rex Dieter <rdieter at fedoraproject.org> 4.8.3-3
+- more work on plasma clock widget/locale crash (kde#299237)
+
 * Wed May 02 2012 Rex Dieter <rdieter at fedoraproject.org> 4.8.3-2
 - plasma clock widget/locale crash (kde#299237)
 


More information about the scm-commits mailing list