From 941244613df00fde67188a5841392a2ea5792a12 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Wed, 11 Sep 2013 18:40:39 +0200 Subject: [PATCH] kde-workspace: added patch for loading of app-specific icons, via Arch. --- .../kde-workspace/patches/kdebug-324574.patch | 55 +++++++++++++++++++ srcpkgs/kde-workspace/template | 2 +- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/kde-workspace/patches/kdebug-324574.patch diff --git a/srcpkgs/kde-workspace/patches/kdebug-324574.patch b/srcpkgs/kde-workspace/patches/kdebug-324574.patch new file mode 100644 index 00000000000..aee230449f8 --- /dev/null +++ b/srcpkgs/kde-workspace/patches/kdebug-324574.patch @@ -0,0 +1,55 @@ +From: Weng Xuetian +Date: Mon, 09 Sep 2013 15:43:06 +0000 +Subject: Delay KDE class initialization to main loop +X-Git-Url: http://quickgit.kde.org/?p=kde-workspace.git&a=commitdiff&h=2e5a2450762f8dedf9ffd77028ed06b3a39a807d +--- +Delay KDE class initialization to main loop + +Gui platform plugin is loaded during QApplication construction, but it +relies on some KApplication/QApplication data to work correctly. + +This patch delays the initialization to main loop, to ensure +KApplication/QApplication is already constructed. + +BUG: 324574 +FIXED-IN: 4.11.2 +REVIEW: 112602 +--- + + +--- qguiplatformplugin_kde/qguiplatformplugin_kde.cpp ++++ qguiplatformplugin_kde/qguiplatformplugin_kde.cpp +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -153,9 +154,7 @@ + public: + KQGuiPlatformPlugin() + { +- connect(KIconLoader::global(), SIGNAL(iconLoaderSettingsChanged()), this, SLOT(updateToolbarIcons())); +- connect(KGlobalSettings::self(), SIGNAL(toolbarAppearanceChanged(int)), this, SLOT(updateToolbarStyle())); +- connect(KGlobalSettings::self(), SIGNAL(kdisplayStyleChanged()), this, SLOT(updateWidgetStyle())); ++ QMetaObject::invokeMethod(this, "init", Qt::QueuedConnection); + } + + virtual QStringList keys() const { return QStringList() << QLatin1String("kde"); } +@@ -340,6 +339,13 @@ + } + + private slots: ++ void init() ++ { ++ connect(KIconLoader::global(), SIGNAL(iconLoaderSettingsChanged()), this, SLOT(updateToolbarIcons())); ++ connect(KGlobalSettings::self(), SIGNAL(toolbarAppearanceChanged(int)), this, SLOT(updateToolbarStyle())); ++ connect(KGlobalSettings::self(), SIGNAL(kdisplayStyleChanged()), this, SLOT(updateWidgetStyle())); ++ } ++ + void updateToolbarStyle() + { + //from gtksymbol.cpp + diff --git a/srcpkgs/kde-workspace/template b/srcpkgs/kde-workspace/template index 9b0929455d7..eac757ff14d 100644 --- a/srcpkgs/kde-workspace/template +++ b/srcpkgs/kde-workspace/template @@ -1,7 +1,7 @@ # Template file for 'kde-workspace' pkgname=kde-workspace version=4.11.1 -revision=2 +revision=3 short_desc="Provides the interface and basic tools for the KDE workspace" maintainer="Juan RP " license="GPL, LGPL, FDL"