Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-plasma/plasma-workspace/files/, kde-plasma/plasma-workspace/
Date: Sun, 07 Aug 2022 15:52:00
Message-Id: 1659886989.95cbc8e4766866e53718a048f86c3c0a094fadf4.asturm@gentoo
1 commit: 95cbc8e4766866e53718a048f86c3c0a094fadf4
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 2 20:01:34 2022 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 7 15:43:09 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95cbc8e4
7
8 kde-plasma/plasma-workspace: drop 5.24.5-r1
9
10 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
11
12 kde-plasma/plasma-workspace/Manifest | 1 -
13 ...ppmenu-fix-top-level-menu-text-coloration.patch | 40 ----
14 ...cker-refresh-RootModel-on-session-backend.patch | 92 ---------
15 ...ystemtray-prefer-IconName-over-IconPixmap.patch | 137 -------------
16 ...asmashell-crash-on-panel-w-systray-remove.patch | 34 ----
17 ...ms-desktoptheme-detect-installed-styles-1.patch | 41 ----
18 ...ms-desktoptheme-detect-installed-styles-2.patch | 72 -------
19 ...sddm-theme-KeyboardButton-fix-layout-name.patch | 39 ----
20 ...s-image-fix-missing-folder-action-buttons.patch | 30 ---
21 .../plasma-workspace-5.24.5-r1.ebuild | 226 ---------------------
22 10 files changed, 712 deletions(-)
23
24 diff --git a/kde-plasma/plasma-workspace/Manifest b/kde-plasma/plasma-workspace/Manifest
25 index c602a730f753..dc9351add211 100644
26 --- a/kde-plasma/plasma-workspace/Manifest
27 +++ b/kde-plasma/plasma-workspace/Manifest
28 @@ -1,3 +1,2 @@
29 -DIST plasma-workspace-5.24.5.tar.xz 18490588 BLAKE2B 5a9681620f40604f631cd7ef0c9d6256cc490436dc5e29ef9434d0f129324c2d405c5647da12778c208976c0cb0b4da698a90a22b70c1cb2723cbc58f69bda1d SHA512 ae40fe545b03e42e9f8fe2e8885d3853f4b52d4fd2ed3ecf7d24fa59b4924b8f8b389e8713ec6a3a875bc66df3952de9157d4a5631b283105a9329a1a1825996
30 DIST plasma-workspace-5.24.6.tar.xz 18500752 BLAKE2B 1e469e91e8f1828f0b819aaa03f2918fa7df551786d7bbc963c7b4f7078719e9655176c5ddeea262175c36b14ba360e143e182dad78e369f833338ef147af06a SHA512 4e49f59d565e0b84951122155158966a54c05a6999ff99503bfff667c780fac6cfc076326f0cac7d53629bfc1d81599b30e919848168f6beb79a4dc7cf7c5560
31 DIST plasma-workspace-5.25.4.tar.xz 18616536 BLAKE2B 1674728254c7ab5e7572b1feb6c66e04794c06dde4e61ef26a5d2f73fe3d4899c195a572359fdaeff1c7a016fa22ec597072bd07481b87f5055bae4a49c627f6 SHA512 4f06eedcae47d3c03e0d604a95242d13284bf64891d1c982884a482583ff81ba60202b60e63cc46c3f7e35b98e2910bf69e451fe1aedb64af387add8bcaf4e87
32
33 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-appmenu-fix-top-level-menu-text-coloration.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-appmenu-fix-top-level-menu-text-coloration.patch
34 deleted file mode 100644
35 index d61877300d27..000000000000
36 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-appmenu-fix-top-level-menu-text-coloration.patch
37 +++ /dev/null
38 @@ -1,40 +0,0 @@
39 -From 4d3f99558cff95259590e70dfbf854a479f772ce Mon Sep 17 00:00:00 2001
40 -From: Nate Graham <nate@×××.org>
41 -Date: Wed, 4 May 2022 10:45:52 -0600
42 -Subject: [PATCH 2/8] applets/appmenu: fix top-level menu text coloration
43 -
44 -28537cf3ff3cd9210f7568f40334ac3a2c9bed18 made the color dynamic, but
45 -neglected to respect the Plasma color scheme, if any. This causes
46 -problems with Plasma themes that have their own colors and don't
47 -respect the systemwide color scheme, such as Breeze Twilight.
48 -
49 -Fix it by using the appropriate colors from the PlasmaCore color scheme
50 -object, not the systemwide object provided by Qt.
51 -
52 -BUG: 453348
53 -FIXED-IN: 5.24.6
54 -
55 -
56 -(cherry picked from commit 19d9bc7e395d8c6e007afdc3b3b5c11a7d02190e)
57 ----
58 - applets/appmenu/package/contents/ui/MenuDelegate.qml | 5 +----
59 - 1 file changed, 1 insertion(+), 4 deletions(-)
60 -
61 -diff --git a/applets/appmenu/package/contents/ui/MenuDelegate.qml b/applets/appmenu/package/contents/ui/MenuDelegate.qml
62 -index 441e99016..afb37589a 100644
63 ---- a/applets/appmenu/package/contents/ui/MenuDelegate.qml
64 -+++ b/applets/appmenu/package/contents/ui/MenuDelegate.qml
65 -@@ -66,9 +66,6 @@ AbstractButton {
66 -
67 - contentItem: PC3.Label {
68 - text: controlRoot.Kirigami.MnemonicData.richTextLabel
69 -- // Kirigami.Theme.highlightedTextColor returns different colors
70 -- // depending on window focus, which does not apply to this applet
71 -- // instead, we use palette.highlightedText here, which returns consistent result
72 -- color: background.state == MenuDelegate.State.Rest ? palette.windowText : palette.highlightedText
73 -+ color: background.state == MenuDelegate.State.Rest ? PlasmaCore.Theme.textColor : PlasmaCore.Theme.highlightedTextColor
74 - }
75 - }
76 ---
77 -2.35.1
78 -
79
80 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-kicker-refresh-RootModel-on-session-backend.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-kicker-refresh-RootModel-on-session-backend.patch
81 deleted file mode 100644
82 index 8cffd8d372ed..000000000000
83 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-kicker-refresh-RootModel-on-session-backend.patch
84 +++ /dev/null
85 @@ -1,92 +0,0 @@
86 -From d0340868619c26de5892f8bd095456dc5a32d0ce Mon Sep 17 00:00:00 2001
87 -From: Amy Rose <amy@×××××.tech>
88 -Date: Tue, 17 May 2022 07:38:03 +0000
89 -Subject: [PATCH 8/8] applets/kicker: refresh RootModel on session backend
90 - state change
91 -
92 -BUG: 427530
93 -
94 -Hunting this one down since mid-March...
95 -
96 -In "native" Plasma containments like the panel, desktop, and plasmawindowed, the `LogindSessionBackend` in `libkworkspace` enters the "Ready" state nearly instantly, before any signals can even be attached. In other containments like Latte Dock and plasmoidviewer, however, the initialization takes some time to complete (unsure why). RootModel was not watching or waiting to check what the session backend's state was, resulting in validity checks being done too soon and never checked again.
97 -
98 -
99 -(cherry picked from commit 2cc819f39bcce9ca83ab3767c42beb1e500e55b1)
100 ----
101 - applets/kicker/plugin/rootmodel.cpp | 1 +
102 - applets/kicker/plugin/systementry.cpp | 1 +
103 - applets/kicker/plugin/systementry.h | 1 +
104 - applets/kicker/plugin/systemmodel.cpp | 2 ++
105 - applets/kicker/plugin/systemmodel.h | 3 +++
106 - 5 files changed, 8 insertions(+)
107 -
108 -diff --git a/applets/kicker/plugin/rootmodel.cpp b/applets/kicker/plugin/rootmodel.cpp
109 -index 4ec323683..837108744 100644
110 ---- a/applets/kicker/plugin/rootmodel.cpp
111 -+++ b/applets/kicker/plugin/rootmodel.cpp
112 -@@ -449,6 +449,7 @@ void RootModel::refresh()
113 - }
114 -
115 - m_systemModel = new SystemModel(this);
116 -+ QObject::connect(m_systemModel, &SystemModel::sessionManagementStateChanged, this, &RootModel::refresh);
117 -
118 - if (m_showPowerSession) {
119 - m_entryList << new GroupEntry(this, i18n("Power / Session"), QStringLiteral("system-log-out"), m_systemModel);
120 -diff --git a/applets/kicker/plugin/systementry.cpp b/applets/kicker/plugin/systementry.cpp
121 -index fdd86ece3..939e2119e 100644
122 ---- a/applets/kicker/plugin/systementry.cpp
123 -+++ b/applets/kicker/plugin/systementry.cpp
124 -@@ -79,6 +79,7 @@ void SystemEntry::refresh()
125 - {
126 - if (!s_sessionManagement) {
127 - s_sessionManagement = new SessionManagement();
128 -+ QObject::connect(s_sessionManagement, &SessionManagement::stateChanged, this, &SystemEntry::sessionManagementStateChanged);
129 - }
130 -
131 - bool valid = false;
132 -diff --git a/applets/kicker/plugin/systementry.h b/applets/kicker/plugin/systementry.h
133 -index a0a258024..981a3a5f5 100644
134 ---- a/applets/kicker/plugin/systementry.h
135 -+++ b/applets/kicker/plugin/systementry.h
136 -@@ -54,6 +54,7 @@ public:
137 -
138 - Q_SIGNALS:
139 - void isValidChanged() const;
140 -+ void sessionManagementStateChanged();
141 -
142 - private Q_SLOTS:
143 - void refresh();
144 -diff --git a/applets/kicker/plugin/systemmodel.cpp b/applets/kicker/plugin/systemmodel.cpp
145 -index 656bbdc4e..844f80d09 100644
146 ---- a/applets/kicker/plugin/systemmodel.cpp
147 -+++ b/applets/kicker/plugin/systemmodel.cpp
148 -@@ -92,10 +92,12 @@ void SystemModel::populate()
149 -
150 - auto addIfValid = [=](const SystemEntry::Action action) {
151 - SystemEntry *entry = new SystemEntry(this, action);
152 -+ QObject::connect(entry, &SystemEntry::sessionManagementStateChanged, this, &SystemModel::sessionManagementStateChanged);
153 -
154 - if (entry->isValid()) {
155 - m_entries << entry;
156 - }
157 -+
158 - QObject::connect(entry, &SystemEntry::isValidChanged, this, &AbstractModel::refresh, Qt::UniqueConnection);
159 - };
160 -
161 -diff --git a/applets/kicker/plugin/systemmodel.h b/applets/kicker/plugin/systemmodel.h
162 -index cd9048de1..29ae9e428 100644
163 ---- a/applets/kicker/plugin/systemmodel.h
164 -+++ b/applets/kicker/plugin/systemmodel.h
165 -@@ -25,6 +25,9 @@ public:
166 -
167 - Q_INVOKABLE bool trigger(int row, const QString &actionId, const QVariant &argument) override;
168 -
169 -+Q_SIGNALS:
170 -+ void sessionManagementStateChanged();
171 -+
172 - protected Q_SLOTS:
173 - void refresh() override;
174 -
175 ---
176 -2.35.1
177 -
178
179 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-systemtray-prefer-IconName-over-IconPixmap.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-systemtray-prefer-IconName-over-IconPixmap.patch
180 deleted file mode 100644
181 index 0ac8ed788ade..000000000000
182 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-applets-systemtray-prefer-IconName-over-IconPixmap.patch
183 +++ /dev/null
184 @@ -1,137 +0,0 @@
185 -From ea2833e4dd7114f8bf22a322a26c6c05ebf767f2 Mon Sep 17 00:00:00 2001
186 -From: Vlad Zahorodnii <vlad.zahorodnii@×××.org>
187 -Date: Mon, 25 Apr 2022 21:58:58 +0300
188 -Subject: [PATCH 3/8] applets/systemtray: Prefer IconName over IconPixmap
189 -
190 -In case both IconName and IconPixmap are provided, the system tray
191 -applet is going to prefer the pixmap.
192 -
193 -That can create a dark icon on dark background bug because plasma can't
194 -recolor pixmaps.
195 -
196 -The SNI spec recommends visualizations to prefer icons over pixmaps:
197 -
198 -> An icon can either be identified by its Freedesktop-compliant icon
199 -> name, carried by this property of by the icon data itself, carried by
200 -> the property IconPixmap. Visualizations are encouraged to prefer icon
201 -> names over icon pixmaps if both are available (FIXME: still not very
202 -> defined: could e the pixmap used as fallback if an icon name is not found?)
203 -
204 -BUG: 418996
205 -
206 -- Unset iconName when icon can't be loaded
207 -- no code duplication
208 -(cherry picked from commit 7363d0e0f3c1a447e6264e92762735bd33da2682)
209 ----
210 - .../systemtray/statusnotifieritemsource.cpp | 82 ++++++++-----------
211 - 1 file changed, 33 insertions(+), 49 deletions(-)
212 -
213 -diff --git a/applets/systemtray/statusnotifieritemsource.cpp b/applets/systemtray/statusnotifieritemsource.cpp
214 -index f67845e42..731aecadc 100644
215 ---- a/applets/systemtray/statusnotifieritemsource.cpp
216 -+++ b/applets/systemtray/statusnotifieritemsource.cpp
217 -@@ -286,68 +286,52 @@ void StatusNotifierItemSource::refreshCallback(QDBusPendingCallWatcher *call)
218 - QIcon overlay;
219 - QStringList overlayNames;
220 -
221 -- // Icon
222 -+ // Overlay icon
223 - {
224 -- KDbusImageVector image;
225 -- QIcon icon;
226 -- QString iconName;
227 --
228 -- properties[QStringLiteral("OverlayIconPixmap")].value<QDBusArgument>() >> image;
229 -- if (image.isEmpty()) {
230 -- QString iconName = properties[QStringLiteral("OverlayIconName")].toString();
231 -- m_overlayIconName = iconName;
232 -- if (!iconName.isEmpty()) {
233 -+ m_overlayIconName = QString();
234 -+
235 -+ const QString iconName = properties[QStringLiteral("OverlayIconName")].toString();
236 -+ if (!iconName.isEmpty()) {
237 -+ overlay = QIcon(new KIconEngine(iconName, iconLoader()));
238 -+ if (!overlay.isNull()) {
239 -+ m_overlayIconName = iconName;
240 - overlayNames << iconName;
241 -- overlay = QIcon(new KIconEngine(iconName, iconLoader()));
242 - }
243 -- } else {
244 -- overlay = imageVectorToPixmap(image);
245 - }
246 -+ if (overlay.isNull()) {
247 -+ KDbusImageVector image;
248 -+ properties[QStringLiteral("OverlayIconPixmap")].value<QDBusArgument>() >> image;
249 -+ if (!image.isEmpty()) {
250 -+ overlay = imageVectorToPixmap(image);
251 -+ }
252 -+ }
253 -+ }
254 -
255 -- properties[QStringLiteral("IconPixmap")].value<QDBusArgument>() >> image;
256 -- if (image.isEmpty()) {
257 -- iconName = properties[QStringLiteral("IconName")].toString();
258 -- if (!iconName.isEmpty()) {
259 -- icon = QIcon(new KIconEngine(iconName, iconLoader(), overlayNames));
260 --
261 -- if (overlayNames.isEmpty() && !overlay.isNull()) {
262 -+ auto loadIcon = [this, &properties, &overlay, &overlayNames](const QString &iconKey, const QString &pixmapKey) -> std::tuple<QIcon, QString> {
263 -+ const QString iconName = properties[iconKey].toString();
264 -+ if (!iconName.isEmpty()) {
265 -+ QIcon icon = QIcon(new KIconEngine(iconName, iconLoader(), overlayNames));
266 -+ if (!icon.isNull()) {
267 -+ if (!overlay.isNull() && overlayNames.isEmpty()) {
268 - overlayIcon(&icon, &overlay);
269 - }
270 -+ return {icon, iconName};
271 - }
272 -- } else {
273 -- icon = imageVectorToPixmap(image);
274 -+ }
275 -+ KDbusImageVector image;
276 -+ properties[pixmapKey].value<QDBusArgument>() >> image;
277 -+ if (!image.isEmpty()) {
278 -+ QIcon icon = imageVectorToPixmap(image);
279 - if (!icon.isNull() && !overlay.isNull()) {
280 - overlayIcon(&icon, &overlay);
281 - }
282 -+ return {icon, QString()};
283 - }
284 -- m_icon = icon;
285 -- m_iconName = iconName;
286 -- }
287 -+ return {};
288 -+ };
289 -
290 -- // Attention icon
291 -- {
292 -- KDbusImageVector image;
293 -- QIcon attentionIcon;
294 --
295 -- properties[QStringLiteral("AttentionIconPixmap")].value<QDBusArgument>() >> image;
296 -- if (image.isEmpty()) {
297 -- QString iconName = properties[QStringLiteral("AttentionIconName")].toString();
298 -- m_attentionIconName = iconName;
299 -- if (!iconName.isEmpty()) {
300 -- attentionIcon = QIcon(new KIconEngine(iconName, iconLoader(), overlayNames));
301 --
302 -- if (overlayNames.isEmpty() && !overlay.isNull()) {
303 -- overlayIcon(&attentionIcon, &overlay);
304 -- }
305 -- }
306 -- } else {
307 -- attentionIcon = imageVectorToPixmap(image);
308 -- if (!attentionIcon.isNull() && !overlay.isNull()) {
309 -- overlayIcon(&attentionIcon, &overlay);
310 -- }
311 -- }
312 -- m_attentionIcon = attentionIcon;
313 -- }
314 -+ std::tie(m_icon, m_iconName) = loadIcon(QStringLiteral("IconName"), QStringLiteral("IconPixmap"));
315 -+ std::tie(m_attentionIcon, m_attentionIconName) = loadIcon(QStringLiteral("AttentionIconName"), QStringLiteral("AttentionIconPixmap"));
316 -
317 - // ToolTip
318 - {
319 ---
320 -2.35.1
321 -
322
323 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-fix-plasmashell-crash-on-panel-w-systray-remove.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-fix-plasmashell-crash-on-panel-w-systray-remove.patch
324 deleted file mode 100644
325 index 609ab0f011cd..000000000000
326 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-fix-plasmashell-crash-on-panel-w-systray-remove.patch
327 +++ /dev/null
328 @@ -1,34 +0,0 @@
329 -From 7795e5fb4f7e2a79e15a9e5711149f71144e73c9 Mon Sep 17 00:00:00 2001
330 -From: Fushan Wen <qydwhotmail@×××××.com>
331 -Date: Fri, 13 May 2022 14:43:44 +0800
332 -Subject: [PATCH 5/8] applets/systemtray: disconnect KConfigLoader signal when
333 - instance is about to be deleted
334 -
335 -When an applet is about to be deleted, it will save its config
336 -automatically, but in this case the system tray doesn't need to load the
337 -config again.
338 -
339 -BUG: 453726
340 -
341 -
342 -(cherry picked from commit 6da91d053b4f142277d60db4a1a17eded9249d11)
343 ----
344 - applets/systemtray/systemtray.cpp | 2 ++
345 - 1 file changed, 2 insertions(+)
346 -
347 -diff --git a/applets/systemtray/systemtray.cpp b/applets/systemtray/systemtray.cpp
348 -index 3b7f688a6..0d889b3f0 100644
349 ---- a/applets/systemtray/systemtray.cpp
350 -+++ b/applets/systemtray/systemtray.cpp
351 -@@ -40,6 +40,8 @@ SystemTray::SystemTray(QObject *parent, const KPluginMetaData &data, const QVari
352 -
353 - SystemTray::~SystemTray()
354 - {
355 -+ // When the applet is about to be deleted, delete now to avoid calling loadConfig()
356 -+ delete m_settings;
357 - }
358 -
359 - void SystemTray::init()
360 ---
361 -2.35.1
362 -
363
364 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-1.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-1.patch
365 deleted file mode 100644
366 index 57477173acbb..000000000000
367 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-1.patch
368 +++ /dev/null
369 @@ -1,41 +0,0 @@
370 -From 1a966d3fb979cf0f0080c805aed248ee77978800 Mon Sep 17 00:00:00 2001
371 -From: Fushan Wen <qydwhotmail@×××××.com>
372 -Date: Mon, 16 May 2022 16:18:00 +0800
373 -Subject: [PATCH 6/8] kcms/desktoptheme: find metadata.json when loading
374 - ThemesModel
375 -
376 -Before this commit ThemesModel only finds metadata.desktop, but after
377 -KF5.94, the default theme metadata files have been ported to json format.
378 -
379 -BUG: 453830
380 -
381 -
382 -(cherry picked from commit 10aa9bb8dca91e92e3009ed57613d43d610da63e)
383 ----
384 - kcms/desktoptheme/themesmodel.cpp | 10 +++++++++-
385 - 1 file changed, 9 insertions(+), 1 deletion(-)
386 -
387 -diff --git a/kcms/desktoptheme/themesmodel.cpp b/kcms/desktoptheme/themesmodel.cpp
388 -index 6f0ecf4e3..296951742 100644
389 ---- a/kcms/desktoptheme/themesmodel.cpp
390 -+++ b/kcms/desktoptheme/themesmodel.cpp
391 -@@ -155,7 +155,15 @@ void ThemesModel::load()
392 - const QDir cd(ppath);
393 - const QStringList &entries = cd.entryList(QDir::Dirs | QDir::Hidden | QDir::NoDotAndDotDot);
394 - for (const QString &pack : entries) {
395 -- const QString _metadata = ppath + QLatin1Char('/') + pack + QStringLiteral("/metadata.desktop");
396 -+ const QString prefix = QStringLiteral("%1%2%3%4metadata.").arg(ppath, QDir::separator(), pack, QDir::separator());
397 -+
398 -+ QString _metadata = QStringLiteral("%1json").arg(prefix);
399 -+ if (QFile::exists(_metadata)) {
400 -+ themes << _metadata;
401 -+ continue;
402 -+ }
403 -+
404 -+ _metadata = QStringLiteral("%1desktop").arg(prefix);
405 - if (QFile::exists(_metadata)) {
406 - themes << _metadata;
407 - }
408 ---
409 -2.35.1
410 -
411
412 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-2.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-2.patch
413 deleted file mode 100644
414 index 2a379c707efe..000000000000
415 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-kcms-desktoptheme-detect-installed-styles-2.patch
416 +++ /dev/null
417 @@ -1,72 +0,0 @@
418 -From c602c52578da1331d2466ff9803c7e0b9287c24c Mon Sep 17 00:00:00 2001
419 -From: Alexander Lohnau <alexander.lohnau@×××.de>
420 -Date: Mon, 16 May 2022 14:49:46 +0200
421 -Subject: [PATCH 7/8] kcms/desktoptheme: Fix reading of metadata in ThemesModel
422 -
423 -We can not use KConfig to read the desktop file.
424 -
425 -CCBUG: 453830
426 -
427 -
428 -(cherry picked from commit 43ae993da35bb408b4fabb5c4514feff97628e0d)
429 ----
430 - kcms/desktoptheme/themesmodel.cpp | 27 +++++++++++++++++++--------
431 - 1 file changed, 19 insertions(+), 8 deletions(-)
432 -
433 -diff --git a/kcms/desktoptheme/themesmodel.cpp b/kcms/desktoptheme/themesmodel.cpp
434 -index 296951742..ce3cac14b 100644
435 ---- a/kcms/desktoptheme/themesmodel.cpp
436 -+++ b/kcms/desktoptheme/themesmodel.cpp
437 -@@ -16,6 +16,7 @@
438 -
439 - #include <KColorScheme>
440 - #include <KDesktopFile>
441 -+#include <KPluginMetaData>
442 -
443 - #include <KConfigGroup>
444 - #include <KSharedConfig>
445 -@@ -176,15 +177,25 @@ void ThemesModel::load()
446 - int themeNameSepIndex = themeRoot.lastIndexOf(QLatin1Char('/'), -1);
447 - const QString packageName = themeRoot.right(themeRoot.length() - themeNameSepIndex - 1);
448 -
449 -- KDesktopFile df(theme);
450 -+ QString name;
451 -+ QString comment;
452 -
453 -- if (df.noDisplay()) {
454 -- continue;
455 -- }
456 -+ if (theme.endsWith(QLatin1String(".json"))) {
457 -+ KPluginMetaData data = KPluginMetaData::fromJsonFile(theme);
458 -+ name = data.name();
459 -+ comment = data.description();
460 -+ } else {
461 -+ KDesktopFile df(theme);
462 -
463 -- QString name = df.readName();
464 -- if (name.isEmpty()) {
465 -- name = packageName;
466 -+ if (df.noDisplay()) {
467 -+ continue;
468 -+ }
469 -+
470 -+ name = df.readName();
471 -+ if (name.isEmpty()) {
472 -+ name = packageName;
473 -+ }
474 -+ comment = df.readComment();
475 - }
476 - const bool isLocal = QFileInfo(theme).isWritable();
477 - bool hasPluginName = std::any_of(m_data.begin(), m_data.end(), [&](const ThemesModelData &item) {
478 -@@ -205,7 +216,7 @@ void ThemesModel::load()
479 - type = LightTheme;
480 - }
481 - }
482 -- ThemesModelData item{name, packageName, df.readComment(), type, isLocal, false};
483 -+ ThemesModelData item{name, packageName, comment, type, isLocal, false};
484 - m_data.append(item);
485 - }
486 - }
487 ---
488 -2.35.1
489 -
490
491 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-sddm-theme-KeyboardButton-fix-layout-name.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-sddm-theme-KeyboardButton-fix-layout-name.patch
492 deleted file mode 100644
493 index 594efe7df172..000000000000
494 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-sddm-theme-KeyboardButton-fix-layout-name.patch
495 +++ /dev/null
496 @@ -1,39 +0,0 @@
497 -From e2b631d43528c3e41d53c8a359b6129c616bc271 Mon Sep 17 00:00:00 2001
498 -From: ivan tkachenko <me@×××××××.tk>
499 -Date: Sat, 30 Apr 2022 03:20:11 +0300
500 -Subject: [PATCH 1/8] [sddm-theme] KeyboardButton: Fix layout name not being
501 - shown
502 -
503 -It used to cause an error like this:
504 -
505 - [03:21:31.246] (WW) GREETER: file:///usr/share/sddm/themes/breeze/KeyboardButton.qml:19: TypeError: Cannot read property 'shortName' of null
506 -
507 -(cherry picked from commit 2e9020ca6c1d55842a4b014623f0d88697972000)
508 ----
509 - sddm-theme/KeyboardButton.qml | 3 +--
510 - 1 file changed, 1 insertion(+), 2 deletions(-)
511 -
512 -diff --git a/sddm-theme/KeyboardButton.qml b/sddm-theme/KeyboardButton.qml
513 -index d5d5a446c..712096d87 100644
514 ---- a/sddm-theme/KeyboardButton.qml
515 -+++ b/sddm-theme/KeyboardButton.qml
516 -@@ -10,7 +10,7 @@ PlasmaComponents.ToolButton {
517 -
518 - property int currentIndex: -1
519 -
520 -- text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Keyboard Layout: %1", instantiator.objectAt(currentIndex).shortName)
521 -+ text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Keyboard Layout: %1", keyboard.layouts[currentIndex].shortName)
522 - implicitWidth: minimumWidth
523 -
524 - visible: menu.items.length > 1
525 -@@ -27,7 +27,6 @@ PlasmaComponents.ToolButton {
526 - onObjectRemoved: keyboardMenu.removeItem( object )
527 - delegate: QQC.MenuItem {
528 - text: modelData.longName
529 -- property string shortName: modelData.shortName
530 - onTriggered: {
531 - keyboard.currentLayout = model.index
532 - }
533 ---
534 -2.35.1
535 -
536
537 diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-wallpapers-image-fix-missing-folder-action-buttons.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-wallpapers-image-fix-missing-folder-action-buttons.patch
538 deleted file mode 100644
539 index d09b60ce6ce4..000000000000
540 --- a/kde-plasma/plasma-workspace/files/plasma-workspace-5.24.5-wallpapers-image-fix-missing-folder-action-buttons.patch
541 +++ /dev/null
542 @@ -1,30 +0,0 @@
543 -From dd8f1b5e302717c84f6a05af36c621122ead6d99 Mon Sep 17 00:00:00 2001
544 -From: Fushan Wen <qydwhotmail@×××××.com>
545 -Date: Fri, 6 May 2022 21:36:09 +0800
546 -Subject: [PATCH 4/8] wallpapers/image: Fix missing folder action buttons
547 -
548 -The width of the action area needs to be substracted in contentItem's
549 -width.
550 -
551 -Also use `Kirigami.Units.gridUnit * 4` because `overlayWidth` was
552 -introduced in Frameworks 5.94, and people using Plasma 5.24 may have an
553 -older Frameworks version.
554 ----
555 - wallpapers/image/imagepackage/contents/ui/config.qml | 1 +
556 - 1 file changed, 1 insertion(+)
557 -
558 -diff --git a/wallpapers/image/imagepackage/contents/ui/config.qml b/wallpapers/image/imagepackage/contents/ui/config.qml
559 -index 97f9f81a5..7bb675f23 100644
560 ---- a/wallpapers/image/imagepackage/contents/ui/config.qml
561 -+++ b/wallpapers/image/imagepackage/contents/ui/config.qml
562 -@@ -331,6 +331,7 @@ ColumnLayout {
563 - // Don't need a highlight or hover effects
564 - hoverEnabled: false
565 - contentItem: Kirigami.BasicListItem {
566 -+ width: slidePathsView.width - (parent.hasOwnProperty("overlayWidth") ? overlayWidth : Kirigami.Units.gridUnit * 4)
567 - // Don't need a highlight or hover effects
568 - hoverEnabled: false
569 - separatorVisible: false
570 ---
571 -2.35.1
572 -
573
574 diff --git a/kde-plasma/plasma-workspace/plasma-workspace-5.24.5-r1.ebuild b/kde-plasma/plasma-workspace/plasma-workspace-5.24.5-r1.ebuild
575 deleted file mode 100644
576 index ff25b6a845ef..000000000000
577 --- a/kde-plasma/plasma-workspace/plasma-workspace-5.24.5-r1.ebuild
578 +++ /dev/null
579 @@ -1,226 +0,0 @@
580 -# Copyright 1999-2022 Gentoo Authors
581 -# Distributed under the terms of the GNU General Public License v2
582 -
583 -EAPI=8
584 -
585 -ECM_HANDBOOK="forceoptional"
586 -ECM_TEST="forceoptional"
587 -KFMIN=5.90.0
588 -PVCUT=$(ver_cut 1-3)
589 -QTMIN=5.15.2
590 -VIRTUALX_REQUIRED="test"
591 -inherit ecm kde.org
592 -
593 -DESCRIPTION="KDE Plasma workspace"
594 -
595 -LICENSE="GPL-2" # TODO: CHECK
596 -SLOT="5"
597 -KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
598 -IUSE="appstream +calendar +fontconfig geolocation gps +policykit
599 -screencast +semantic-desktop telemetry"
600 -
601 -REQUIRED_USE="gps? ( geolocation )"
602 -RESTRICT="test"
603 -
604 -# slot op: various private QtWaylandClient headers
605 -COMMON_DEPEND="
606 - >=dev-libs/wayland-1.15
607 - >=dev-qt/qtdbus-${QTMIN}:5
608 - >=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
609 - >=dev-qt/qtgui-${QTMIN}:5=[jpeg,libinput]
610 - >=dev-qt/qtnetwork-${QTMIN}:5
611 - >=dev-qt/qtsql-${QTMIN}:5
612 - >=dev-qt/qtsvg-${QTMIN}:5
613 - >=dev-qt/qtwayland-${QTMIN}:5=
614 - >=dev-qt/qtwidgets-${QTMIN}:5
615 - >=dev-qt/qtx11extras-${QTMIN}:5
616 - >=dev-qt/qtxml-${QTMIN}:5
617 - >=kde-frameworks/kactivities-${KFMIN}:5
618 - >=kde-frameworks/kactivities-stats-${KFMIN}:5
619 - >=kde-frameworks/karchive-${KFMIN}:5
620 - >=kde-frameworks/kauth-${KFMIN}:5
621 - >=kde-frameworks/kbookmarks-${KFMIN}:5
622 - >=kde-frameworks/kcompletion-${KFMIN}:5
623 - >=kde-frameworks/kconfig-${KFMIN}:5
624 - >=kde-frameworks/kconfigwidgets-${KFMIN}:5
625 - >=kde-frameworks/kcoreaddons-${KFMIN}:5
626 - >=kde-frameworks/kcrash-${KFMIN}:5
627 - >=kde-frameworks/kdbusaddons-${KFMIN}:5
628 - >=kde-frameworks/kdeclarative-${KFMIN}:5
629 - >=kde-frameworks/kded-${KFMIN}:5
630 - >=kde-frameworks/kglobalaccel-${KFMIN}:5
631 - >=kde-frameworks/kguiaddons-${KFMIN}:5
632 - >=kde-frameworks/ki18n-${KFMIN}:5
633 - >=kde-frameworks/kiconthemes-${KFMIN}:5
634 - >=kde-frameworks/kidletime-${KFMIN}:5
635 - >=kde-frameworks/kinit-${KFMIN}:5
636 - >=kde-frameworks/kio-${KFMIN}:5
637 - >=kde-frameworks/kitemmodels-${KFMIN}:5
638 - >=kde-frameworks/kitemviews-${KFMIN}:5
639 - >=kde-frameworks/kjobwidgets-${KFMIN}:5
640 - >=kde-frameworks/knewstuff-${KFMIN}:5
641 - >=kde-frameworks/knotifications-${KFMIN}:5
642 - >=kde-frameworks/knotifyconfig-${KFMIN}:5
643 - >=kde-frameworks/kpackage-${KFMIN}:5
644 - >=kde-frameworks/kpeople-${KFMIN}:5
645 - >=kde-frameworks/krunner-${KFMIN}:5
646 - >=kde-frameworks/kservice-${KFMIN}:5
647 - >=kde-frameworks/ktexteditor-${KFMIN}:5
648 - >=kde-frameworks/ktextwidgets-${KFMIN}:5
649 - >=kde-frameworks/kunitconversion-${KFMIN}:5
650 - >=kde-frameworks/kwallet-${KFMIN}:5
651 - >=kde-frameworks/kwayland-${KFMIN}:5
652 - >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
653 - >=kde-frameworks/kwindowsystem-${KFMIN}:5
654 - >=kde-frameworks/kxmlgui-${KFMIN}:5
655 - >=kde-frameworks/plasma-${KFMIN}:5
656 - >=kde-frameworks/prison-${KFMIN}:5[qml]
657 - >=kde-frameworks/solid-${KFMIN}:5
658 - >=kde-plasma/breeze-${PVCUT}:5
659 - >=kde-plasma/kscreenlocker-${PVCUT}:5
660 - >=kde-plasma/kwin-${PVCUT}:5
661 - >=kde-plasma/layer-shell-qt-${PVCUT}:5
662 - >=kde-plasma/libkscreen-${PVCUT}:5
663 - >=kde-plasma/libksysguard-${PVCUT}:5
664 - >=kde-plasma/libkworkspace-${PVCUT}:5
665 - >=media-libs/phonon-4.11.0
666 - sci-libs/libqalculate:=
667 - sys-libs/zlib
668 - x11-libs/libICE
669 - x11-libs/libSM
670 - x11-libs/libX11
671 - x11-libs/libXau
672 - x11-libs/libxcb
673 - x11-libs/libXcursor
674 - x11-libs/libXfixes
675 - x11-libs/libXrender
676 - x11-libs/libXtst
677 - x11-libs/xcb-util
678 - x11-libs/xcb-util-image
679 - appstream? ( dev-libs/appstream[qt5] )
680 - calendar? ( >=kde-frameworks/kholidays-${KFMIN}:5 )
681 - fontconfig? (
682 - >=dev-qt/qtprintsupport-${QTMIN}:5
683 - media-libs/fontconfig
684 - x11-libs/libXft
685 - x11-libs/xcb-util-image
686 - )
687 - geolocation? ( >=kde-frameworks/networkmanager-qt-${KFMIN}:5 )
688 - gps? ( sci-geosciences/gpsd )
689 - policykit? ( virtual/libcrypt:= )
690 - screencast? (
691 - >=dev-qt/qtgui-${QTMIN}:5=[egl]
692 - media-libs/libglvnd
693 - >=media-video/pipewire-0.3:=
694 - x11-libs/libdrm
695 - )
696 - semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:5 )
697 - telemetry? ( dev-libs/kuserfeedback:5 )
698 -"
699 -DEPEND="${COMMON_DEPEND}
700 - >=dev-libs/plasma-wayland-protocols-1.6.0
701 - >=dev-qt/qtconcurrent-${QTMIN}:5
702 - >=dev-util/wayland-scanner-1.19.0
703 - x11-base/xorg-proto
704 - fontconfig? ( x11-libs/libXrender )
705 -"
706 -RDEPEND="${COMMON_DEPEND}
707 - app-text/iso-codes
708 - >=dev-qt/qdbus-${QTMIN}:*
709 - >=dev-qt/qtgraphicaleffects-${QTMIN}:5
710 - >=dev-qt/qtpaths-${QTMIN}:5
711 - >=dev-qt/qtquickcontrols-${QTMIN}:5[widgets]
712 - >=dev-qt/qtquickcontrols2-${QTMIN}:5
713 - kde-apps/kio-extras:5
714 - >=kde-frameworks/kirigami-${KFMIN}:5
715 - >=kde-frameworks/kquickcharts-${KFMIN}:5
716 - >=kde-plasma/milou-${PVCUT}:5
717 - >=kde-plasma/plasma-integration-${PVCUT}:5
718 - sys-apps/dbus
719 - x11-apps/xmessage
720 - x11-apps/xprop
721 - x11-apps/xrdb
722 - x11-apps/xsetroot
723 - !<kde-plasma/breeze-5.22.90:5
724 - !<kde-plasma/plasma-desktop-5.23.90:5
725 - policykit? ( sys-apps/accountsservice )
726 -"
727 -BDEPEND="
728 - >=dev-qt/qtwaylandscanner-${QTMIN}:5
729 - virtual/pkgconfig
730 -"
731 -PDEPEND=">=kde-plasma/kde-cli-tools-${PVCUT}:5"
732 -
733 -PATCHES=(
734 - "${FILESDIR}"/${PN}-5.21.5-split-libkworkspace.patch # downstream
735 - "${FILESDIR}"/${PN}-5.22.5-krunner-cwd-at-home.patch # TODO upstream: KDE-bug 432975, bug 767478
736 - "${FILESDIR}"/${P}-sddm-theme-KeyboardButton-fix-layout-name.patch
737 - "${FILESDIR}"/${P}-applets-appmenu-fix-top-level-menu-text-coloration.patch # KDE-bug 453348
738 - "${FILESDIR}"/${P}-applets-systemtray-prefer-IconName-over-IconPixmap.patch # KDE-bug 418996
739 - "${FILESDIR}"/${P}-wallpapers-image-fix-missing-folder-action-buttons.patch
740 - "${FILESDIR}"/${P}-fix-plasmashell-crash-on-panel-w-systray-remove.patch # KDE-bug 453726
741 - "${FILESDIR}"/${P}-kcms-desktoptheme-detect-installed-styles-{1,2}.patch # KDE-bug 453830
742 - "${FILESDIR}"/${P}-applets-kicker-refresh-RootModel-on-session-backend.patch # KDE-bug 427530
743 -)
744 -
745 -src_prepare() {
746 - ecm_src_prepare
747 -
748 - cmake_comment_add_subdirectory libkworkspace
749 - # delete colliding libkworkspace translations
750 - if [[ ${KDE_BUILD_TYPE} = release ]]; then
751 - find po -type f -name "*po" -and -name "libkworkspace*" -delete || die
752 - fi
753 -
754 - # TODO: try to get a build switch upstreamed
755 - if ! use screencast; then
756 - sed -e "s/^pkg_check_modules.*PipeWire/#&/" -i CMakeLists.txt || die
757 - fi
758 -
759 - # TODO: try to get a build switch upstreamed
760 - if use geolocation; then
761 - use gps || sed -e "s/^pkg_check_modules.*LIBGPS/#&/" \
762 - -i dataengines/geolocation/CMakeLists.txt || die
763 - fi
764 -
765 - if ! use policykit; then
766 - cmake_run_in kcms cmake_comment_add_subdirectory users
767 - fi
768 -
769 - ecm_punt_kf_module Su
770 -}
771 -
772 -src_configure() {
773 - local mycmakeargs=(
774 - -DBUILD_xembed-sni-proxy=OFF
775 - -DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt5=ON
776 - $(cmake_use_find_package appstream AppStreamQt)
777 - $(cmake_use_find_package calendar KF5Holidays)
778 - $(cmake_use_find_package fontconfig Fontconfig)
779 - $(cmake_use_find_package geolocation KF5NetworkManagerQt)
780 - $(cmake_use_find_package semantic-desktop KF5Baloo)
781 - $(cmake_use_find_package telemetry KUserFeedback)
782 - )
783 -
784 - ecm_src_configure
785 -}
786 -
787 -src_install() {
788 - ecm_src_install
789 -
790 - # default startup and shutdown scripts
791 - insinto /etc/xdg/plasma-workspace/env
792 - doins "${FILESDIR}"/10-agent-startup.sh
793 -
794 - insinto /etc/xdg/plasma-workspace/shutdown
795 - doins "${FILESDIR}"/10-agent-shutdown.sh
796 - fperms +x /etc/xdg/plasma-workspace/shutdown/10-agent-shutdown.sh
797 -}
798 -
799 -pkg_postinst () {
800 - ecm_pkg_postinst
801 -
802 - elog "To enable gpg-agent and/or ssh-agent in Plasma sessions,"
803 - elog "edit ${EPREFIX}/etc/xdg/plasma-workspace/env/10-agent-startup.sh"
804 - elog "and ${EPREFIX}/etc/xdg/plasma-workspace/shutdown/10-agent-shutdown.sh"
805 -}