summaryrefslogtreecommitdiff
path: root/kde-frameworks/plasma
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-02-02 01:39:05 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-02-02 01:39:05 +0000
commitfcc5224904648a8e6eb528d7603154160a20022f (patch)
tree3bfce096b38a9cea8eed13fc70c1526c456e9abd /kde-frameworks/plasma
parent2fd57282f0262ca084e05b0f2c63fbada395d02b (diff)
gentoo resync : 02.02.2022
Diffstat (limited to 'kde-frameworks/plasma')
-rw-r--r--kde-frameworks/plasma/Manifest5
-rw-r--r--kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch90
-rw-r--r--kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-447752.patch68
-rw-r--r--kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-448590.patch32
-rw-r--r--kde-frameworks/plasma/plasma-5.90.0-r1.ebuild (renamed from kde-frameworks/plasma/plasma-5.90.0.ebuild)6
5 files changed, 200 insertions, 1 deletions
diff --git a/kde-frameworks/plasma/Manifest b/kde-frameworks/plasma/Manifest
index 10f899587bf9..cd38669ae829 100644
--- a/kde-frameworks/plasma/Manifest
+++ b/kde-frameworks/plasma/Manifest
@@ -5,9 +5,12 @@ AUX plasma-5.88.0-no-double-delete.patch 988 BLAKE2B 9d3fce0c542c557cddf12cea739
AUX plasma-5.88.0-reload-shared-renderers-if-changed-on-disk.patch 9892 BLAKE2B b0804a3f5b568c518178ef703c002a58fd71dc8139259d2e3cf81aac67070a8c60fde6a7ebf048e5912a28ad1f3e0f135846a589192ef2223087e19835c8fe07 SHA512 367f76b3a2c8ea357506dbd2926d8bfe92b922edcc3ad78d2b52491aaf7fd13689be3c1554cad0a297bbb1ab6839a379926b47d2793ef1e58db0568a2b0c56f8
AUX plasma-5.88.0-svg-smaller-mask-to-hide-glitches.patch 2027 BLAKE2B a0136afc58043cc49925a70bd24d73e2b9a5ee9d3c0474ba77a0c9d34daedd117c151c7376907220b176bc159935fe57edacd4fa885fcd082ccfb30f585baa8f SHA512 808643c91081d31e0e5579ef394858de0e82f74b44c01e39c6ebabd8a269809bd79f0666361d30ca370042e976880169dbb6b41dc1d008f31d64199260234739
AUX plasma-5.88.0-update-after-clearing-actions.patch 1104 BLAKE2B f4fb2603d06760c77f2bd4e927d59f2aad9baace236ea1c58799158e99931027eaef9993f39bf2e768a590a0e2dc1cb2bced6c11a1c6374a5136b87f9cc562f5 SHA512 a3687beb4bfb2d3384b4921f13ab7c20b27ce12866741e574ce2225483a6905cf1b95d6647b976f44196909ff25232a430d2eae5f7158a1a39dac23d9ae42cda
+AUX plasma-5.90.0-KDEBUG-426969.patch 3254 BLAKE2B 2b2bcafa630b3daaecd54e6cf2d10b5d7f3a668c54393ca0f1f307c3dac05450801d80537b7af6188e39f25ec00430601ea5fa55f7cc7c2c4564e7f234f5fc7d SHA512 f87839edda4fd680d81ddaf59befcf6836bc5510fd287e3ca3737de0f0b16e3d8272ac3d9eaf4b12704bdd65991348e450c93824ae6ab2603c47f25be9950884
+AUX plasma-5.90.0-KDEBUG-447752.patch 2649 BLAKE2B 879a0fbb02e6a90120797d2352e8b3c9874b3203fc1125a004b940f52757eea907a4499d047589c59b4cc7f87dd1ca15119aaa2d990462fda8cc989da5996826 SHA512 17e43da6fd6d6f956e17c889fd4bccdb39d88a1a08cd4cf6bf3af1021eae7dc034821b2b87e2bc5bf2eeedf0338e0d2afb3adba62c0d07a0c68bece08ac781e8
+AUX plasma-5.90.0-KDEBUG-448590.patch 1433 BLAKE2B 667d2f07b474ac5b5ceda34e1e819e7b62fc74463dcc763638d18b60b9dfd93eeca87519069792ff91a80cfe0d795562468b1423943b672556bb6b49a2e84362 SHA512 822f3795fc89f95deb71d6ab3608d38608cff9be48bb30748b2c52adecdf12899707ad2be918fe014087297539c42018914d4c77f7855d4d912844838cca871c
DIST plasma-framework-5.88.0.tar.xz 3142640 BLAKE2B cbd0cc61b6c39e56a1bceed44d7f04f0033c0daaa3073760f04536b22760147b1bb82f5b85d70d48301083e9ae13e3f6bbebafa75e264762157e2fcaf658123d SHA512 b99c8d5722198d7f2096734f62f913f74471810331980a2722f1864602f3facf796c17a494d16fca7dbbe4389fd5db64b9fe82fd34f148f4ff6230ffde0ded93
DIST plasma-framework-5.90.0.tar.xz 3143720 BLAKE2B 497a1808c2f07b985f3b458d2bf6b4b4e0198a8bd92cffdad86cc9470cd51c857c3de66edbe4d6ea543da74f6ba05fe5ce1b6746e2df7830839e45549ca01293 SHA512 0f22e100ad996be39a2cc5afa72d3e769dc512d3854d417e81536908bc4e6c9874788554fcea1ca1ec4798cd78681c78ab7c2242b95d7f5fdb6cfd9eeee9543b
EBUILD plasma-5.88.0-r2.ebuild 2369 BLAKE2B 14e4deb3f5292674fcb30e824a386a0cc65538bde2deacd4a811983e7c16d3592627d08dc6f9584882eb4d2b839d25a88607398d0f1ee48c18ac0080ebdddd42 SHA512 7b58ac1d7120a87ab3588352ba6e7b9a529741ebd98ead6a5c7138dc685f2a64697b9e1985cd614da31adf5b61d04cef10128e6f3be5a2cf82be47f00b6268a1
EBUILD plasma-5.88.0-r3.ebuild 2447 BLAKE2B 2a1471cb8dab390459b6745a038a56ecf9f5a08b3fbcc5ebe67b5b30442a8a20a3e7a892de120c0e336d4bf4fa5027220b10c656ed00ad61a6a2286cedfddf56 SHA512 bc975c57746ff89492db6fc1149c27478a3510422f0b58f46676a48701dcc93501b8cf83896fd481cbc3713657402f1562d9aaa06089b8fcf553bccc774e80b0
-EBUILD plasma-5.90.0.ebuild 1943 BLAKE2B acf5b27409eb3763f894a3e64e472b0343eba7b98ff0719b51b5db2efe8e82daad3daff398679b89810c6e4d356d8fd2657fc9d1344a678009c2be35478e3fb9 SHA512 429185ca06ec503371c74dd1ec1c02f50fd57482cacead69e95b3efcae8751bb20befb8b0ff79d8133b63b3e0bfbe41467fd953a73f4d5883e3a15db7745af98
+EBUILD plasma-5.90.0-r1.ebuild 2076 BLAKE2B 14fed7b4fc036b009261d64e098201a91ae946cfdad0573ce7a8e145dfbff3d12c06aedd4947c2707e39b21c8bdd39d43bb1a2574d9611051e754cc4eab2aca4 SHA512 4be7bdec353776454b87191091f5649a04d1ae22402898b5d7603c2e782fde0de23d4a39e43254cb5ac7ba73717dad6cb069d6ddf6f083de1add8888c706e630
MISC metadata.xml 456 BLAKE2B 4392b1cc6f304778d71236d5eb557dfbbd530143eea5cad9a3c3034e3e8b22c835f6c7f980124a21cefd35a2dd1efd5110adc0a5342170f88dfd7418b12bee99 SHA512 7ba65331cad434e2dceee012a5458d268eb2a04e0f7276b265c15644e6db5209bc7eee7d9695aa0038c435711e0f6f0dc53c7bae9d773b48f01e22a22e4dbb80
diff --git a/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch
new file mode 100644
index 000000000000..bccc097a3b99
--- /dev/null
+++ b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-426969.patch
@@ -0,0 +1,90 @@
+From d40d36057a0ee9fcb4badc7ff8b56844da79dfc8 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Wed, 12 Jan 2022 22:21:34 +0000
+Subject: [PATCH] Always sync the setPanelBehavior to wayland
+
+Currently this code is in the else statement to if (type !=
+Dialog::Normal) {
+
+This doesn't make sense as panel roles apply explicitly to other types,
+like Dialog::Dock. On X11 the equivalent always applies.
+
+BUG: 426969
+
+* asturm 2022-01-22: Merged with below fixup:
+
+From b882b34d7b55975f679133ef86cfd12869e8bba5 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Thu, 13 Jan 2022 17:03:38 +0000
+Subject: [PATCH] Always sync the setPanelBehavior to wayland
+
+The previous patch moved some code that reapplied setRole in a way that
+caused issues.
+
+BUG: 448373
+
+--- a/src/plasmaquick/dialog.cpp
++++ b/src/plasmaquick/dialog.cpp
+@@ -693,14 +693,13 @@
+
+ void DialogPrivate::applyType()
+ {
+- if (type != Dialog::Normal) {
+ /*QXcbWindowFunctions::WmWindowType*/ int wmType = 0;
+
+ #if HAVE_X11
+ if (KWindowSystem::isPlatformX11()) {
+ switch (type) {
+ case Dialog::Normal:
+- Q_UNREACHABLE();
++ q->setFlags(Qt::FramelessWindowHint | q->flags());
+ break;
+ case Dialog::Dock:
+ wmType = QXcbWindowFunctions::WmWindowType::Dock;
+@@ -729,11 +728,15 @@
+ }
+ #endif
+
+- if (!wmType) {
++ if (!wmType && type != Dialog::Normal) {
+ KWindowSystem::setType(q->winId(), static_cast<NET::WindowType>(type));
+ }
+ #if HAVE_KWAYLAND
+ if (shellSurface) {
++ if (q->flags() & Qt::WindowStaysOnTopHint) {
++ type = Dialog::Dock;
++ shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::WindowsGoBelow);
++ }
+ switch (type) {
+ case Dialog::Dock:
+ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Panel);
+@@ -750,27 +753,13 @@
+ case Dialog::CriticalNotification:
+ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::CriticalNotification);
+ break;
++ case Dialog::Normal:
++ shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Normal);
+ default:
+ break;
+ }
+ }
+ #endif
+- } else {
+- q->setFlags(Qt::FramelessWindowHint | q->flags());
+-
+-#if HAVE_KWAYLAND
+- // Only possible after setup
+- if (shellSurface) {
+- if (q->flags() & Qt::WindowStaysOnTopHint) {
+- shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Panel);
+- shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::WindowsGoBelow);
+- } else {
+- shellSurface->setRole(KWayland::Client::PlasmaShellSurface::Role::Normal);
+- shellSurface->setPanelBehavior(KWayland::Client::PlasmaShellSurface::PanelBehavior::AlwaysVisible);
+- }
+- }
+-#endif
+- }
+
+ // an OSD can't be a Dialog, as qt xcb would attempt to set a transient parent for it
+ // see bug 370433
diff --git a/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-447752.patch b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-447752.patch
new file mode 100644
index 000000000000..62cb8a52b6c5
--- /dev/null
+++ b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-447752.patch
@@ -0,0 +1,68 @@
+From ecf0cc36936f69830a07937b97807ec0ba4d3f41 Mon Sep 17 00:00:00 2001
+From: Marco Martin <notmart@gmail.com>
+Date: Mon, 10 Jan 2022 09:22:09 +0000
+Subject: [PATCH] Don't crash when a screen gets disabled and enabled again
+
+when a screen gets disabled, the containment loses its view, and when gets enabled again,
+the process of the old orphaned containment getting a new view causes a plasma crash.
+It comes from the wallpaper, which indicates a hierarchy of C++ owned objects
+makes the internal one (wallpaper) to not reset correctly its window and have a stray pointer to it.
+
+BUG:447752
+---
+ .../qml/plasmoid/containmentinterface.cpp | 21 +++++++++++++++----
+ .../qml/plasmoid/containmentinterface.h | 1 +
+ 2 files changed, 18 insertions(+), 4 deletions(-)
+
+diff --git a/src/scriptengines/qml/plasmoid/containmentinterface.cpp b/src/scriptengines/qml/plasmoid/containmentinterface.cpp
+index d8a89014c..29a7738ca 100644
+--- a/src/scriptengines/qml/plasmoid/containmentinterface.cpp
++++ b/src/scriptengines/qml/plasmoid/containmentinterface.cpp
+@@ -74,10 +74,6 @@ void ContainmentInterface::init()
+ connect(m_activityInfo, &KActivities::Info::nameChanged, this, &ContainmentInterface::activityNameChanged);
+ Q_EMIT activityNameChanged();
+
+- if (!m_containment->wallpaper().isEmpty()) {
+- loadWallpaper();
+- }
+-
+ AppletInterface::init();
+
+ // Create the ToolBox
+@@ -1162,4 +1158,21 @@ bool ContainmentInterface::isLoading() const
+ return loading;
+ }
+
++void ContainmentInterface::itemChange(ItemChange change, const ItemChangeData &value)
++{
++ if (change == QQuickItem::ItemSceneChange) {
++ // we have a window: create the representations if needed
++ if (value.window && !m_containment->wallpaper().isEmpty()) {
++ loadWallpaper();
++ } else if (m_wallpaperInterface) {
++ m_wallpaperInterface->deleteLater();
++ m_wallpaperInterface = nullptr;
++ Q_EMIT wallpaperInterfaceChanged();
++ }
++ }
++
++ AppletInterface::itemChange(change, value);
++}
++
++
+ #include "moc_containmentinterface.cpp"
+diff --git a/src/scriptengines/qml/plasmoid/containmentinterface.h b/src/scriptengines/qml/plasmoid/containmentinterface.h
+index a91c60c5e..f1276ee80 100644
+--- a/src/scriptengines/qml/plasmoid/containmentinterface.h
++++ b/src/scriptengines/qml/plasmoid/containmentinterface.h
+@@ -169,6 +169,7 @@ protected:
+ void addContainmentActions(QMenu *desktopMenu, QEvent *event);
+
+ virtual bool isLoading() const override;
++ void itemChange(ItemChange change, const ItemChangeData &value) override;
+
+ Q_SIGNALS:
+ /**
+--
+GitLab
+
diff --git a/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-448590.patch b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-448590.patch
new file mode 100644
index 000000000000..4bbb7a8ce1b0
--- /dev/null
+++ b/kde-frameworks/plasma/files/plasma-5.90.0-KDEBUG-448590.patch
@@ -0,0 +1,32 @@
+From e9ba0c54f2c01bb530370c16502cf304fc18b3f6 Mon Sep 17 00:00:00 2001
+From: Alexander Lohnau <alexander.lohnau@gmx.de>
+Date: Mon, 17 Jan 2022 19:58:53 +0100
+Subject: [PATCH] Corona::containmentForScreen: Ignore activities when an empty
+ string is used
+
+With the other overloads being deprecated, consumers are forced to put in an empty string
+for the activity. As one can see in the pre-existing code, an empty string indicates
+that the activity should be ignored. Consequently we should skip the activity check, when
+we got an empty string.
+
+BUG: 448590
+---
+ src/plasma/corona.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/plasma/corona.cpp b/src/plasma/corona.cpp
+index f034d7b2e..8f532d690 100644
+--- a/src/plasma/corona.cpp
++++ b/src/plasma/corona.cpp
+@@ -206,7 +206,7 @@ Containment *Corona::containmentForScreen(int screen, const QString &activity, c
+ for (Containment *cont : std::as_const(d->containments)) {
+ /* clang-format off */
+ if (cont->lastScreen() == screen
+- && (cont->activity().isEmpty() || cont->activity() == activity)
++ && ((cont->activity().isEmpty() || activity.isEmpty()) || cont->activity() == activity)
+ && (cont->containmentType() == Plasma::Types::DesktopContainment
+ || cont->containmentType() == Plasma::Types::CustomContainment)) { /* clang-format on */
+ containment = cont;
+--
+GitLab
+
diff --git a/kde-frameworks/plasma/plasma-5.90.0.ebuild b/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild
index 0a0ae5ff71e9..a59a50636a36 100644
--- a/kde-frameworks/plasma/plasma-5.90.0.ebuild
+++ b/kde-frameworks/plasma/plasma-5.90.0-r1.ebuild
@@ -59,6 +59,12 @@ DEPEND="${RDEPEND}
"
BDEPEND="man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )"
+PATCHES=(
+ "${FILESDIR}/${P}-KDEBUG-426969.patch"
+ "${FILESDIR}/${P}-KDEBUG-447752.patch"
+ "${FILESDIR}/${P}-KDEBUG-448590.patch"
+)
+
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package !gles2-only OpenGL)