summaryrefslogtreecommitdiff
path: root/kde-misc/kclock
diff options
context:
space:
mode:
Diffstat (limited to 'kde-misc/kclock')
-rw-r--r--kde-misc/kclock/Manifest2
-rw-r--r--kde-misc/kclock/files/kclock-24.12.3-kirigami-6.12.patch114
-rw-r--r--kde-misc/kclock/kclock-24.12.3-r1.ebuild36
3 files changed, 152 insertions, 0 deletions
diff --git a/kde-misc/kclock/Manifest b/kde-misc/kclock/Manifest
index 1d2fa79fa794..fa2242275e21 100644
--- a/kde-misc/kclock/Manifest
+++ b/kde-misc/kclock/Manifest
@@ -1,5 +1,7 @@
+AUX kclock-24.12.3-kirigami-6.12.patch 4782 BLAKE2B 20a2590210ff5981b85d1b6b6d7d158631e1f6b47620ba5199b02577b9ae3efaeca96900b12ab344b08ed3fb9c0305d8cc5a92935bb0471c3b35ee85cbbdc30c SHA512 6c043dcbdb6cdf2a0d2640b935d8c060b3a736331af1b19f07bde0cf1c6697b6b4efe6fde901bb35a8e73c67047301726736c0a8648048647e93f8378857b30c
DIST kclock-24.12.2.tar.xz 662936 BLAKE2B c8cc9e0f8fe1a858c9234e04886b9fc14b0c338d997fd79e987a65e751e4abbc6e8c3a1805e8623ea3148926a3658f5b45cfbb26d8440de60c144b0dfe4850af SHA512 45a6b95f586ad371972b8ccd8c404f2bce2d5e1388a5fb0e144c740ce4030b17aff6b72fb849d24849e4827bb662fc616767b884016c7338a4f266f5ddb5852d
DIST kclock-24.12.3.tar.xz 663004 BLAKE2B 4fd9d75f4803f0299e216fb8e38963bb3618bec81e805b2d1a5b167089d0ae8a1056e571e5504b932785b278dc56803290f63f5d403f3efc4852186702f119f7 SHA512 5b50f6560095d9ec5e34577b2efb88af9c682cb78c439a534fb7e23dda35b83b78d3579fdb15d5349b3ed9d10d6098bfbee48d9e2f82b6ddb07f08e5025cb41d
EBUILD kclock-24.12.2.ebuild 912 BLAKE2B 50021de43d8fd924bcb9bf89fb255c33b912e033a10dee8eac9c00f1a72ccdb66504f80b10792666515eccf262f3d4274afcd92f76679dc7bec5bf4f0c26de1d SHA512 11a2ed85df55ea1d93945017c1b29d800895346d29fd2ebdf4162b40b5ff0853835677ae8d6e729c7f1ab0b57f97657959f7c81520286d310adc2e39746029e2
+EBUILD kclock-24.12.3-r1.ebuild 966 BLAKE2B 8fea1b7449892333f300552fc533232903ec94ad5bd78c55ea9b00ee6bc9bc73208d6e64895cef60f17eedd8e3219945a5a48022190c698bbf366577e908e93f SHA512 822d52bcf1831d8a7574d891e204bd7337eddaf59e5e9d40ddffbe14696883f0ec894125defc18e48f27a7e5305d7850e4552549ee1db5e3020745b90caac683
EBUILD kclock-24.12.3.ebuild 914 BLAKE2B be40039924d4828e500ce450132a8c71cf7af6539666d898bffadda1f1ca67fddf41932d6e77f9bec73500bfe335b8d4cdf7befd7be6f799445b72522a3d664e SHA512 fed62f19a33ef26e06f5366f818b0522df6cc052b1d079b53689ccc59290e80b50c4dea4dff0f4d47903a1f1e6dcfd2b9f000ceed8c7f9f9509849ec0f4a1a90
MISC metadata.xml 406 BLAKE2B d51f4d0b4a45c8947a5c5694b3f88bf8205d6c4bd25f79aed87cebb89a57bc274f1df2a2c9ebcfe07278e508dc3be57f3a031e60da15a80058d97e16352f2159 SHA512 5fcb550291c93463dba5003cfd1be5a3977fdc394ef53cf10c23ac96a018ba6446600e8cd2290fc46b6461e9301db45a10a8ce244a64d1e44576c7286d5922c3
diff --git a/kde-misc/kclock/files/kclock-24.12.3-kirigami-6.12.patch b/kde-misc/kclock/files/kclock-24.12.3-kirigami-6.12.patch
new file mode 100644
index 000000000000..51586df4a586
--- /dev/null
+++ b/kde-misc/kclock/files/kclock-24.12.3-kirigami-6.12.patch
@@ -0,0 +1,114 @@
+From 7926d90aa82875e5c7e87e8c41c766c1f1d156c0 Mon Sep 17 00:00:00 2001
+From: Nate Graham <nate@kde.org>
+Date: Mon, 24 Mar 2025 14:18:15 -0600
+Subject: [PATCH] AlarmForm: create duration and snooze models correctly
+
+Currently these are created imperatively to work around the fact that
+ListItem can't accept i18n() strings. This imperative assignment breaks
+implicitWidth bindings on the Repeater object, which bubbles up and
+eventually causes the dialog to have a content size of zero.
+
+Instead, create the data models as arrays of dictionaries, which
+preserves the bindings and is the recommended way to do this sort of
+lightweight custom model.
+---
+ src/kclock/qml/alarm/AlarmForm.qml | 64 ++++++++++++++----------------
+ 1 file changed, 29 insertions(+), 35 deletions(-)
+
+diff --git a/src/kclock/qml/alarm/AlarmForm.qml b/src/kclock/qml/alarm/AlarmForm.qml
+index 29644d8..969ad47 100644
+--- a/src/kclock/qml/alarm/AlarmForm.qml
++++ b/src/kclock/qml/alarm/AlarmForm.qml
+@@ -129,30 +129,27 @@ Kirigami.FormLayout {
+ }
+ }
+ title: i18n("Select Ring Duration")
+- model: ListModel {
+- // we can't use i18n with ListElement
+- Component.onCompleted: {
+- append({"name": i18n("None"), "value": -1});
+- append({"name": i18n("1 minute"), "value": 1});
+- append({"name": i18n("2 minutes"), "value": 2});
+- append({"name": i18n("5 minutes"), "value": 5});
+- append({"name": i18n("10 minutes"), "value": 10});
+- append({"name": i18n("15 minutes"), "value": 15});
+- append({"name": i18n("30 minutes"), "value": 30});
+- append({"name": i18n("1 hour"), "value": 60});
+- }
+- }
+-
++ model: [
++ {"name": i18n("None"), "value": -1},
++ {"name": i18n("1 minute"), "value": 1},
++ {"name": i18n("2 minutes"), "value": 2},
++ {"name": i18n("5 minutes"), "value": 5},
++ {"name": i18n("10 minutes"), "value": 10},
++ {"name": i18n("15 minutes"), "value": 15},
++ {"name": i18n("30 minutes"), "value": 30},
++ {"name": i18n("1 hour"), "value": 60}
++ ]
++
+ dialogDelegate: RadioDelegate {
+ implicitWidth: Kirigami.Units.gridUnit * 16
+ topPadding: Kirigami.Units.smallSpacing * 2
+ bottomPadding: Kirigami.Units.smallSpacing * 2
+-
+- text: name
+- checked: root.formRingDuration == value
++
++ text: modelData.name
++ checked: root.formRingDuration == modelData.value
+ onCheckedChanged: {
+ if (checked) {
+- root.formRingDuration = value;
++ root.formRingDuration = modelData.value;
+ }
+ }
+ }
+@@ -167,29 +164,26 @@ Kirigami.FormLayout {
+ Kirigami.FormData.label: i18n("Snooze Length:")
+ title: i18n("Select Snooze Length")
+ text: formSnoozeDuration === 1 ? i18n("1 minute") : i18n("%1 minutes", formSnoozeDuration)
+- model: ListModel {
+- // we can't use i18n with ListElement
+- Component.onCompleted: {
+- append({"name": i18n("1 minute"), "value": 1});
+- append({"name": i18n("2 minutes"), "value": 2});
+- append({"name": i18n("5 minutes"), "value": 5});
+- append({"name": i18n("10 minutes"), "value": 10});
+- append({"name": i18n("15 minutes"), "value": 15});
+- append({"name": i18n("30 minutes"), "value": 30});
+- append({"name": i18n("1 hour"), "value": 60});
+- }
+- }
+-
++ model: [
++ {"name": i18n("1 minute"), "value": 1},
++ {"name": i18n("2 minutes"), "value": 2},
++ {"name": i18n("5 minutes"), "value": 5},
++ {"name": i18n("10 minutes"), "value": 10},
++ {"name": i18n("15 minutes"), "value": 15},
++ {"name": i18n("30 minutes"), "value": 30},
++ {"name": i18n("1 hour"), "value": 60},
++ ]
++
+ dialogDelegate: RadioDelegate {
+ implicitWidth: Kirigami.Units.gridUnit * 16
+ topPadding: Kirigami.Units.smallSpacing * 2
+ bottomPadding: Kirigami.Units.smallSpacing * 2
+-
+- text: name
+- checked: root.formSnoozeDuration == value
++
++ text: modelData.name
++ checked: root.formSnoozeDuration == modelData.value
+ onCheckedChanged: {
+ if (checked) {
+- root.formSnoozeDuration = value;
++ root.formSnoozeDuration = modelData.value;
+ }
+ }
+ }
+--
+GitLab
+
diff --git a/kde-misc/kclock/kclock-24.12.3-r1.ebuild b/kde-misc/kclock/kclock-24.12.3-r1.ebuild
new file mode 100644
index 000000000000..c9d7049e1f14
--- /dev/null
+++ b/kde-misc/kclock/kclock-24.12.3-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KDE_ORG_CATEGORY="utilities"
+KFMIN=6.7.0
+QTMIN=6.7.2
+inherit ecm gear.kde.org
+
+DESCRIPTION="Convergent clock application for Plasma"
+HOMEPAGE="https://apps.kde.org/kclock/"
+
+LICENSE="CC0-1.0 CC-BY-4.0 GPL-2+ GPL-3+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+DEPEND="
+ dev-libs/kirigami-addons:6
+ >=dev-qt/qtbase-${QTMIN}:6[gui,network,widgets]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ >=dev-qt/qtmultimedia-${QTMIN}:6[qml]
+ >=kde-frameworks/kconfig-${KFMIN}:6
+ >=kde-frameworks/kcoreaddons-${KFMIN}:6
+ >=kde-frameworks/kdbusaddons-${KFMIN}:6
+ >=kde-frameworks/ki18n-${KFMIN}:6
+ >=kde-frameworks/kirigami-${KFMIN}:6
+ >=kde-frameworks/knotifications-${KFMIN}:6
+ >=kde-frameworks/kstatusnotifieritem-${KFMIN}:6
+ kde-plasma/libplasma:6
+"
+RDEPEND="${DEPEND}
+ >=dev-qt/qt5compat-${QTMIN}:6[qml]
+"
+
+PATCHES=( "${FILESDIR}/${P}-kirigami-6.12.patch" )