Bug#1108625: unblock: kf6-kiconthemes/6.13.0-2
Package: release.debian.org
Severity: normal
X-Debbugs-Cc: kf6-kiconthemes@packages.debian.org, Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Control: affects -1 + src:kf6-kiconthemes
User: release.debian.org@packages.debian.org
Usertags: unblock
Dear Release Team,
please unblock package kf6-kiconthemes
[ Reason ]
It contains the following changes:
* Backport upstream commits:
- Correctly forward accepted/rejected signales to the QML version of the
icon selection dialog. [a75b8966] (This unbreaks kicker’s configuration
page and closes: #1108068.)
[ Impact ]
- Kicker launcher’s configuration screen is currently broken in trixie.
[ Tests ]
- The fix was tested by original submitter and myself and works.
- No regression identified running the Plasma desktop with the patch.
[ Risks ]
- Commit backported from the upstream repo. The commit was made on April
7th and the files modified haven’t seen further changes since then.
I deem the risk to be very low.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
unblock kf6-kiconthemes/6.13.0-2
diff -Nru kf6-kiconthemes-6.13.0/debian/changelog kf6-kiconthemes-6.13.0/debian/changelog
--- kf6-kiconthemes-6.13.0/debian/changelog 2025-04-12 19:37:00.000000000 +0200
+++ kf6-kiconthemes-6.13.0/debian/changelog 2025-06-29 23:38:15.000000000 +0200
@@ -1,3 +1,13 @@
+kf6-kiconthemes (6.13.0-2) unstable; urgency=medium
+
+ [ Aurélien COUDERC ]
+ * Backport upstream commits:
+ - Correctly forward accepted/rejected signales to the QML version of the
+ icon selection dialog. [a75b8966] (This unbreaks kicker’s configuration
+ page and closes: #1108068.)
+
+ -- Aurélien COUDERC <coucouf@debian.org> Sun, 29 Jun 2025 23:38:15 +0200
+
kf6-kiconthemes (6.13.0-1) unstable; urgency=medium
[ Patrick Franz ]
diff -Nru kf6-kiconthemes-6.13.0/debian/patches/series kf6-kiconthemes-6.13.0/debian/patches/series
--- kf6-kiconthemes-6.13.0/debian/patches/series 2024-09-09 19:42:49.000000000 +0200
+++ kf6-kiconthemes-6.13.0/debian/patches/series 2025-06-29 23:35:48.000000000 +0200
@@ -1 +1,2 @@
cross.patch
+upstream_a75b8966_qml-icondialog-forward-accepted-rejected-signals.patch
diff -Nru kf6-kiconthemes-6.13.0/debian/patches/upstream_a75b8966_qml-icondialog-forward-accepted-rejected-signals.patch kf6-kiconthemes-6.13.0/debian/patches/upstream_a75b8966_qml-icondialog-forward-accepted-rejected-signals.patch
--- kf6-kiconthemes-6.13.0/debian/patches/upstream_a75b8966_qml-icondialog-forward-accepted-rejected-signals.patch 1970-01-01 01:00:00.000000000 +0100
+++ kf6-kiconthemes-6.13.0/debian/patches/upstream_a75b8966_qml-icondialog-forward-accepted-rejected-signals.patch 2025-06-29 23:35:48.000000000 +0200
@@ -0,0 +1,51 @@
+From a75b8966076694512dc4994e8b00a316ccc6321b Mon Sep 17 00:00:00 2001
+From: Christoph Wolk <cwo.kde@posteo.net>
+Date: Sun, 6 Apr 2025 17:23:46 +0200
+Subject: [PATCH] qml/icondialog: forward accepted/rejected signals
+
+While the underlying KIconDialog has accepted/rejected signals, they are
+not forwarded to the qml version. The existing iconNameChanged signal
+can do the job in some circumstances, but does not adequately cover all
+circumstances. For example, the custom icon in Kicker is set by an
+IconDialog, but the property can be independently reset to be cleared.
+If the user sets a custom icon, clears it, then tries to set the same
+icon again, it will not work as the dialog's iconName property stays the
+same. In this case, we actually need to know whether the user pressed
+Accept or Cancel, so we can set the configuration property again.
+
+This change adds the signals and connects them to those for the
+underlying KIconDialog.
+---
+ src/qml/icondialog.cpp | 2 ++
+ src/qml/icondialog_p.h | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/src/qml/icondialog.cpp b/src/qml/icondialog.cpp
+index 8e7851b8..57c1054a 100644
+--- a/src/qml/icondialog.cpp
++++ b/src/qml/icondialog.cpp
+@@ -28,6 +28,8 @@ IconDialog::IconDialog(QObject *parent)
+ Q_EMIT iconNameChanged(newIconName);
+ }
+ });
++ connect(m_dialog.data(), &KIconDialog::accepted, this, &IconDialog::accepted);
++ connect(m_dialog.data(), &KIconDialog::rejected, this, &IconDialog::rejected);
+
+ m_dialog->installEventFilter(this);
+ }
+diff --git a/src/qml/icondialog_p.h b/src/qml/icondialog_p.h
+index 49b86134..485f0f27 100644
+--- a/src/qml/icondialog_p.h
++++ b/src/qml/icondialog_p.h
+@@ -83,6 +83,8 @@ Q_SIGNALS:
+ void customLocationChanged(const QString &customLocation);
+ void modalityChanged(Qt::WindowModality modality);
+ void visibleChanged();
++ void accepted();
++ void rejected();
+
+ private:
+ bool eventFilter(QObject *watched, QEvent *event) override;
+--
+GitLab
+
Reply to: