summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/knewstuff/APKBUILD7
-rw-r--r--user/knewstuff/backport.patch54
-rw-r--r--user/plasma-workspace/APKBUILD6
-rw-r--r--user/plasma-workspace/backport1.patch40
-rw-r--r--user/plasma-workspace/backport2.patch41
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
+