diff options
-rw-r--r-- | user/knewstuff/APKBUILD | 7 | ||||
-rw-r--r-- | user/knewstuff/backport.patch | 54 | ||||
-rw-r--r-- | user/plasma-workspace/APKBUILD | 6 | ||||
-rw-r--r-- | user/plasma-workspace/backport1.patch | 40 | ||||
-rw-r--r-- | user/plasma-workspace/backport2.patch | 41 |
5 files changed, 145 insertions, 3 deletions
diff --git a/user/knewstuff/APKBUILD b/user/knewstuff/APKBUILD index 7720f7aa2..bef47c3f5 100644 --- a/user/knewstuff/APKBUILD +++ b/user/knewstuff/APKBUILD @@ -18,7 +18,9 @@ makedepends="$depends_dev cmake extra-cmake-modules python3 doxygen graphviz ki18n-dev kiconthemes-dev kirigami2-dev kitemviews-dev kpackage-dev ktextwidgets-dev kwidgetsaddons-dev syndication-dev $docdepends" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" -source="https://download.kde.org/stable/frameworks/${pkgver%.*}/knewstuff-$pkgver.tar.xz" +source="https://download.kde.org/stable/frameworks/${pkgver%.*}/knewstuff-$pkgver.tar.xz + backport.patch + " build() { if [ "$CBUILD" != "$CHOST" ]; then @@ -45,4 +47,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="6269614a0df2616bd5bd1a8e9c3f8dc16920bbd4cf8fd18a5ccc1e818c292d90533de3dc77ce8fbbb183388ad6fed72a30b78177eddd87624499b3c75d55a226 knewstuff-5.94.0.tar.xz" +sha512sums="6269614a0df2616bd5bd1a8e9c3f8dc16920bbd4cf8fd18a5ccc1e818c292d90533de3dc77ce8fbbb183388ad6fed72a30b78177eddd87624499b3c75d55a226 knewstuff-5.94.0.tar.xz +5c73d39a78658899f4e7b2526608498ff63bf4e6f9b730b0f20f3205017e77fe4a9a96e3ab9e42f0789234a3e0658a89f646bc040488465f07689bc9629105fc backport.patch" diff --git a/user/knewstuff/backport.patch b/user/knewstuff/backport.patch new file mode 100644 index 000000000..002d4c182 --- /dev/null +++ b/user/knewstuff/backport.patch @@ -0,0 +1,54 @@ +From b634b65dd081746ccb8bdfa9bf2d878d13e2c0fb Mon Sep 17 00:00:00 2001 +From: Alexander Lohnau <alexander.lohnau@gmx.de> +Date: Tue, 24 May 2022 12:58:54 +0200 +Subject: [PATCH] Fix QtQuickDialogWrapper dialog not being usable in konsole + +Patch provided by David Edmundson. + +``` +Issue is QGuiApplicationPrivate::showModalWindow + +it marks every other non-modal window as blocked, including new windows. + +when we focus the new dialog at a wayland/X level Qt gets it, but in it's own internal dispatching ignores that and sends it to the modal window + +Qt is smart enough to handle child windows appropriately, but only if it knows about them. Having a transient parent should take care of this. We should have this anyway as that will fix some window placement bugs. +``` + +BUG: 452593 +--- + src/qtquickdialogwrapper.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/qtquickdialogwrapper.cpp b/src/qtquickdialogwrapper.cpp +index 4f22b650..e31e8d80 100644 +--- a/src/qtquickdialogwrapper.cpp ++++ b/src/qtquickdialogwrapper.cpp +@@ -7,10 +7,12 @@ + #include "qtquickdialogwrapper.h" + + #include <QEventLoop> ++#include <QGuiApplication> + #include <QQmlComponent> + #include <QQmlContext> + #include <QQmlEngine> + #include <QTimer> ++#include <QWindow> + + #include <KLocalizedContext> + +@@ -70,6 +72,11 @@ QtQuickDialogWrapper::QtQuickDialogWrapper(const QString &configFile, QObject *p + + // Forward relevant signals + connect(d->item, SIGNAL(closed()), this, SIGNAL(closed())); ++ ++ // Otherwise, the dialog is not in front of other popups, BUG: 452593 ++ auto window = qobject_cast<QWindow *>(d->item); ++ Q_ASSERT(window); ++ window->setTransientParent(QGuiApplication::focusWindow()); + } + } + +-- +GitLab + diff --git a/user/plasma-workspace/APKBUILD b/user/plasma-workspace/APKBUILD index 642a5bdd0..06b2acbd3 100644 --- a/user/plasma-workspace/APKBUILD +++ b/user/plasma-workspace/APKBUILD @@ -37,6 +37,8 @@ provides="user-manager=$pkgver-r$pkgrel" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="https://download.kde.org/stable/plasma/$pkgver/plasma-workspace-$pkgver.tar.xz libkworkspace.patch + backport1.patch + backport2.patch " build() { @@ -64,4 +66,6 @@ package() { } sha512sums="ae40fe545b03e42e9f8fe2e8885d3853f4b52d4fd2ed3ecf7d24fa59b4924b8f8b389e8713ec6a3a875bc66df3952de9157d4a5631b283105a9329a1a1825996 plasma-workspace-5.24.5.tar.xz -f58b88928fd68518bc0524db35388cb0f0dbc2a55d85fc47e92ce7fcbaf9b155482736e282bd84104ceecc625406845840128c8d0fcd2a4d5a854673964cd94f libkworkspace.patch" +f58b88928fd68518bc0524db35388cb0f0dbc2a55d85fc47e92ce7fcbaf9b155482736e282bd84104ceecc625406845840128c8d0fcd2a4d5a854673964cd94f libkworkspace.patch +022f1407c538f396cdd1fd9c228a56450ed868e0f16e42333cd10fca238fb5e12b38596f65b06159b573628c290f86d8af8dca136b1acafe4042d4c0d91e8a63 backport1.patch +3cc5228b5f2fdcb21a2e877fccde1e5316a9e2efae1523c68dff4a6a2efa5cc42782340b7ae491a5ea77ef642aa4b7ce35e58068d9e124b286c431105bad8821 backport2.patch" diff --git a/user/plasma-workspace/backport1.patch b/user/plasma-workspace/backport1.patch new file mode 100644 index 000000000..c2ccc0f62 --- /dev/null +++ b/user/plasma-workspace/backport1.patch @@ -0,0 +1,40 @@ +From 4d3f99558cff95259590e70dfbf854a479f772ce Mon Sep 17 00:00:00 2001 +From: Nate Graham <nate@kde.org> +Date: Wed, 4 May 2022 10:45:52 -0600 +Subject: [PATCH] applets/appmenu: fix top-level menu text coloration + +28537cf3ff3cd9210f7568f40334ac3a2c9bed18 made the color dynamic, but +neglected to respect the Plasma color scheme, if any. This causes +problems with Plasma themes that have their own colors and don't +respect the systemwide color scheme, such as Breeze Twilight. + +Fix it by using the appropriate colors from the PlasmaCore color scheme +object, not the systemwide object provided by Qt. + +BUG: 453348 +FIXED-IN: 5.24.6 + + +(cherry picked from commit 19d9bc7e395d8c6e007afdc3b3b5c11a7d02190e) +--- + applets/appmenu/package/contents/ui/MenuDelegate.qml | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/applets/appmenu/package/contents/ui/MenuDelegate.qml b/applets/appmenu/package/contents/ui/MenuDelegate.qml +index 441e99016..afb37589a 100644 +--- a/applets/appmenu/package/contents/ui/MenuDelegate.qml ++++ b/applets/appmenu/package/contents/ui/MenuDelegate.qml +@@ -66,9 +66,6 @@ AbstractButton { + + contentItem: PC3.Label { + text: controlRoot.Kirigami.MnemonicData.richTextLabel +- // Kirigami.Theme.highlightedTextColor returns different colors +- // depending on window focus, which does not apply to this applet +- // instead, we use palette.highlightedText here, which returns consistent result +- color: background.state == MenuDelegate.State.Rest ? palette.windowText : palette.highlightedText ++ color: background.state == MenuDelegate.State.Rest ? PlasmaCore.Theme.textColor : PlasmaCore.Theme.highlightedTextColor + } + } +-- +GitLab + diff --git a/user/plasma-workspace/backport2.patch b/user/plasma-workspace/backport2.patch new file mode 100644 index 000000000..352bed917 --- /dev/null +++ b/user/plasma-workspace/backport2.patch @@ -0,0 +1,41 @@ +From f77b7284e39b14b0e9a8b4d2b77c0b93b2c9ea59 Mon Sep 17 00:00:00 2001 +From: Fushan Wen <qydwhotmail@gmail.com> +Date: Mon, 16 May 2022 16:18:00 +0800 +Subject: [PATCH] kcms/desktoptheme: find metadata.json when loading + ThemesModel + +Before this commit ThemesModel only finds metadata.desktop, but after +KF5.94, the default theme metadata files have been ported to json format. + +BUG: 453830 + + +(cherry picked from commit 10aa9bb8dca91e92e3009ed57613d43d610da63e) +--- + kcms/desktoptheme/themesmodel.cpp | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/kcms/desktoptheme/themesmodel.cpp b/kcms/desktoptheme/themesmodel.cpp +index 6f0ecf4e3..296951742 100644 +--- a/kcms/desktoptheme/themesmodel.cpp ++++ b/kcms/desktoptheme/themesmodel.cpp +@@ -155,7 +155,15 @@ void ThemesModel::load() + const QDir cd(ppath); + const QStringList &entries = cd.entryList(QDir::Dirs | QDir::Hidden | QDir::NoDotAndDotDot); + for (const QString &pack : entries) { +- const QString _metadata = ppath + QLatin1Char('/') + pack + QStringLiteral("/metadata.desktop"); ++ const QString prefix = QStringLiteral("%1%2%3%4metadata.").arg(ppath, QDir::separator(), pack, QDir::separator()); ++ ++ QString _metadata = QStringLiteral("%1json").arg(prefix); ++ if (QFile::exists(_metadata)) { ++ themes << _metadata; ++ continue; ++ } ++ ++ _metadata = QStringLiteral("%1desktop").arg(prefix); + if (QFile::exists(_metadata)) { + themes << _metadata; + } +-- +GitLab + |