diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-11-12 10:27:43 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-11-12 10:27:43 +0000 |
commit | f1535b44d6fda761018ea432a180dcb482e97652 (patch) | |
tree | 0c17b546154f9b91340a45d84b5dc42dc12c7713 /kde-plasma | |
parent | cdc1eda9c1ad611dd737415be2790c8f44812f1c (diff) |
gentoo auto-resync : 12:11:2023 - 10:27:42
Diffstat (limited to 'kde-plasma')
-rw-r--r-- | kde-plasma/Manifest.gz | bin | 9615 -> 9611 bytes | |||
-rw-r--r-- | kde-plasma/plasma-desktop/Manifest | 4 | ||||
-rw-r--r-- | kde-plasma/plasma-desktop/files/plasma-desktop-5.27.9-foldermodel-screen-add-remove-handling.patch | 95 | ||||
-rw-r--r-- | kde-plasma/plasma-desktop/plasma-desktop-5.27.9-r1.ebuild (renamed from kde-plasma/plasma-desktop/plasma-desktop-5.27.9.ebuild) | 5 |
4 files changed, 101 insertions, 3 deletions
diff --git a/kde-plasma/Manifest.gz b/kde-plasma/Manifest.gz Binary files differindex ea9353a587e7..fe6964919edd 100644 --- a/kde-plasma/Manifest.gz +++ b/kde-plasma/Manifest.gz diff --git a/kde-plasma/plasma-desktop/Manifest b/kde-plasma/plasma-desktop/Manifest index 36cab209fea2..71bc74f92153 100644 --- a/kde-plasma/plasma-desktop/Manifest +++ b/kde-plasma/plasma-desktop/Manifest @@ -1,6 +1,8 @@ +AUX plasma-desktop-5.27.9-foldermodel-screen-add-remove-handling.patch 4749 BLAKE2B ce2c755ddaf1afdf1e4e6dae556df76e9d34fedebde8df5c604a47693965c1d2e85dc77c4b36badf2dd251ff0b2db3ecdf73e5353a64e8d56694bccb8e328de5 SHA512 1a8b9b9321d74b898ed22072d6e8bbfe5213977dffcee147d40a62489258af7f5b5ae3da371336376a53d16105ab0cb210f986306622077ed50ab12ba0b81689 DIST plasma-desktop-5.27.8.tar.xz 14718232 BLAKE2B a78a67b731f2f4d68fe1bf469006c4cca65e2425029643088c4cb88674841b825842ecdda880891d8714343548dee1b297f5a83769b7f447bcb0fcee0bd5c170 SHA512 b36f19421b1aa112f54df0ceba55ca258d4d46ba404221cd641d68436aa199c16ee04c187b5edfd2aabd11cd97551c1e0253e7789cc616e9d88604fdc2153edc DIST plasma-desktop-5.27.9.tar.xz 14721128 BLAKE2B 5332887ac65df280d8eaa6d834d844a49ba8d3aba38246564e19885aaed86135b95958b7914e69008c1ff1d5b85440a9d8998ca04740c82ddc1cf46399cb9f6f SHA512 ae23ab2e8359345c5ffe3cd2ff8d3aa8e302be49f3686f5f24fd5905990fc2f05a45d69fcb9b3414eae9997b70e0d424b307bc7f02d189158cd7f9ba995c9ec9 DIST plasma-desktop-override-include-dirs-2.tar.xz 8324 BLAKE2B 5ddf9340edf6b6fa76e80158a982ac887b0fb464bc40d5bc4dcd3d6b8f5a87c2d6ecdd153e67e168454aa7faff8d84defb90ba16096b64f3af1e7a74570a00c6 SHA512 452923555bd419d3e389e808c4c9ea35e48795d4f0d78c5845aea677e21f594068540538a8968c2d4034aacb11e910a7b69908e10518eba486ebcc0dda39221a +DIST plasma-desktop-override-include-dirs-3.tar.xz 8288 BLAKE2B f05ece81d1b744d45a21a5963750011c1e815156bcaac6075fa67451ba8ab1ea0fcc5ca59c8109c6fe65f9d4db6ac003bb7e26bf011e124c5f9b7f9e1b3afef5 SHA512 fbfc08a4c057dab3ef96e3c56d5e6087916e952ff32280c6e23c0822e18739441082894ea36412be04eda0893a4e10b9a0fbf0a10e0e44f046b6e872840c4dbb EBUILD plasma-desktop-5.27.8.ebuild 5274 BLAKE2B 52b9f2791b9825c6696ee0aa64c1772212b072e1ac2674e76dfae0155995b069ba05ce7e801d50c18609078c193197b1b3159d8fb535bf92de9afde665daaef4 SHA512 08e05d7e99ee480002ae75c1f9c35b284efa5c9f32b13f1e2c88ae21d0e6a9eb11470d9ad3d9a21cb11a749db501df3fb4f583c051797680553ecd25d3f4a4fc -EBUILD plasma-desktop-5.27.9.ebuild 5277 BLAKE2B 96fa03df97de2dcd9a6d3bec45338aa3ed7cb22a3be88a922d909923c5897fc0cdacbd99f567de316b5273cf4913139d6f07d0112b743122baf9c5e252e5c509 SHA512 32e4e8264152378ad61a9554c0065b36b63b27d839bf62743e1e61b3ad7f2f2dd05c91feb9babbc757e02324ab68db9ca8bcf81e44177a50caeabff0aedb0092 +EBUILD plasma-desktop-5.27.9-r1.ebuild 5346 BLAKE2B 51e7e6006a322f7a0411c8dc431a47781b1ccab778b04235f59747272326bac1831164dbb3916f3e3da6f437c647f434eda6b95c906fce5566c4c675ce5712e3 SHA512 dfbe30a4ca628123c7d835883811f33fc79ad2ebdd4df8cc77ed851184f9c8ce84cab7c5a7a3fb37ff144453dced5203495e77adfee2dd60dca09e1013afd47d MISC metadata.xml 560 BLAKE2B bf6910f40706c17989a0961c39073bd1bb00575b0bbd12c9a44c5ae8c699b33451dac36512afe8310c4bff5432864d16adb0f5b6b3f933b39705409547b05ee5 SHA512 0f34c3e91789674538cbac7f857ef57db8e1ca9b85b7e5d512b1a6af10fb218bfae01f65ae1825d26bb31103e7b95c0cf68fc3965c40952392afafcbf5877a25 diff --git a/kde-plasma/plasma-desktop/files/plasma-desktop-5.27.9-foldermodel-screen-add-remove-handling.patch b/kde-plasma/plasma-desktop/files/plasma-desktop-5.27.9-foldermodel-screen-add-remove-handling.patch new file mode 100644 index 000000000000..8d5ad98b40b7 --- /dev/null +++ b/kde-plasma/plasma-desktop/files/plasma-desktop-5.27.9-foldermodel-screen-add-remove-handling.patch @@ -0,0 +1,95 @@ +From a6bc63103ed128ffe0fd843eb3c4416ede835fde Mon Sep 17 00:00:00 2001 +From: Harald Sitter <sitter@kde.org> +Date: Mon, 6 Nov 2023 23:24:57 +0100 +Subject: [PATCH] foldermodel: lift screen add/remove handling out of + screenmapper + +screenmapper is the wrong place for it because we don't know the url +inside the mapper. Instead handle events in the foldermodel and +correctly delegate the add/remove actions to the mapper with both our +screenId AND the activityId + +notably the previous code would incorrectly invoke addScreen with empty +activityIds triggering fallback handling that resulted in incorrect +m_screensPerPath management (there would be no screen associated with +our url anymore after a screenAdded signal because our screen got +associated with no url) and consequently firstAvailableScreen would +return no screen for our url (remember: we are associated with no url) +making FolderModel::filterAcceptsRow return false and filtering +completely valid entries + +BUG: 467951 + +possibly also is the root cause behind +CCBUG: 467092 +--- + containments/desktop/plugins/folder/foldermodel.cpp | 12 +++++++++++- + containments/desktop/plugins/folder/screenmapper.cpp | 9 +-------- + containments/desktop/plugins/folder/screenmapper.h | 2 +- + 3 files changed, 13 insertions(+), 10 deletions(-) + +diff --git a/containments/desktop/plugins/folder/foldermodel.cpp b/containments/desktop/plugins/folder/foldermodel.cpp +index 6a9f8da607..bcab0275e3 100644 +--- a/containments/desktop/plugins/folder/foldermodel.cpp ++++ b/containments/desktop/plugins/folder/foldermodel.cpp +@@ -2024,7 +2024,17 @@ void FolderModel::setAppletInterface(QObject *appletInterface) + Plasma::Corona *corona = containment->corona(); + + if (corona) { +- m_screenMapper->setCorona(corona, m_currentActivity); ++ connect(corona, &Plasma::Corona::screenRemoved, this, [this](int screenId) { ++ if (m_screen == screenId) { ++ m_screenMapper->removeScreen(screenId, m_currentActivity, resolvedUrl()); ++ } ++ }); ++ connect(corona, &Plasma::Corona::screenAdded, this, [this](int screenId) { ++ if (m_screen == screenId) { ++ m_screenMapper->addScreen(screenId, m_currentActivity, resolvedUrl()); ++ } ++ }); ++ m_screenMapper->setCorona(corona); + } + setScreen(containment->screen()); + connect(containment, &Plasma::Containment::screenChanged, this, &FolderModel::setScreen); +diff --git a/containments/desktop/plugins/folder/screenmapper.cpp b/containments/desktop/plugins/folder/screenmapper.cpp +index 83e8a75276..fccea0e3fe 100644 +--- a/containments/desktop/plugins/folder/screenmapper.cpp ++++ b/containments/desktop/plugins/folder/screenmapper.cpp +@@ -243,20 +243,13 @@ void ScreenMapper::cleanup() + } + #endif + +-void ScreenMapper::setCorona(Plasma::Corona *corona, const QString &activity) ++void ScreenMapper::setCorona(Plasma::Corona *corona) + { + if (m_corona != corona) { + Q_ASSERT(!m_corona); + + m_corona = corona; + if (m_corona) { +- connect(m_corona, &Plasma::Corona::screenRemoved, this, [this, activity](int screenId) { +- removeScreen(screenId, activity, {}); +- }); +- connect(m_corona, &Plasma::Corona::screenAdded, this, [this, activity](int screenId) { +- addScreen(screenId, activity, {}); +- }); +- + auto config = m_corona->config(); + KConfigGroup group(config, QStringLiteral("ScreenMapping")); + const QStringList mapping = group.readEntry(QStringLiteral("screenMapping"), QStringList{}); +diff --git a/containments/desktop/plugins/folder/screenmapper.h b/containments/desktop/plugins/folder/screenmapper.h +index 47b01e1c08..c22432b2e8 100644 +--- a/containments/desktop/plugins/folder/screenmapper.h ++++ b/containments/desktop/plugins/folder/screenmapper.h +@@ -50,7 +50,7 @@ public: + int screenForItem(const QUrl &url, const QString &activity) const; + void addMapping(const QUrl &url, int screen, const QString &activity, MappingSignalBehavior behavior = ImmediateSignal); + void removeFromMap(const QUrl &url, const QString &activity); +- void setCorona(Plasma::Corona *corona, const QString &activity); ++ void setCorona(Plasma::Corona *corona); + + void addScreen(int screenId, const QString &activity, const QUrl &screenUrl); + void removeScreen(int screenId, const QString &activity, const QUrl &screenUrl); +-- +GitLab + diff --git a/kde-plasma/plasma-desktop/plasma-desktop-5.27.9.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-5.27.9-r1.ebuild index fe029afd2df4..a1c03e948e7d 100644 --- a/kde-plasma/plasma-desktop/plasma-desktop-5.27.9.ebuild +++ b/kde-plasma/plasma-desktop/plasma-desktop-5.27.9-r1.ebuild @@ -11,7 +11,7 @@ QTMIN=5.15.9 inherit ecm plasma.kde.org optfeature DESCRIPTION="KDE Plasma desktop" -XORGHDRS="${PN}-override-include-dirs-2" +XORGHDRS="${PN}-override-include-dirs-3" SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${XORGHDRS}.tar.xz" LICENSE="GPL-2" # TODO: CHECK @@ -126,7 +126,8 @@ BDEPEND=" " PATCHES=( - "${WORKDIR}/${XORGHDRS}/${PN}-5.25.80-override-include-dirs.patch" # downstream patch + "${WORKDIR}/${XORGHDRS}/${P}-override-include-dirs.patch" # downstream patch + "${FILESDIR}/${P}-foldermodel-screen-add-remove-handling.patch" # in 5.27.10 ) src_prepare() { |