Package: lomiri-ui-toolkit / 1.3.5110+dfsg-2

0001_prepare-Alarm-component-to-support-others-alarm-back.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
From 1389f79e76fa2248ce7828c71602d6764ddf53c4 Mon Sep 17 00:00:00 2001
From: Lionel Duboeuf <lduboeuf@ouvaton.org>
Date: Mon, 27 Jan 2025 14:16:48 +0100
Subject: [PATCH] prepare Alarm component to support others alarm backend

Signed-off-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
---
 .../adapters/alarmsadapter_organizer.cpp            | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/src/LomiriToolkit/adapters/alarmsadapter_organizer.cpp b/src/LomiriToolkit/adapters/alarmsadapter_organizer.cpp
index cc0487f6c..a3d54b429 100644
--- a/src/LomiriToolkit/adapters/alarmsadapter_organizer.cpp
+++ b/src/LomiriToolkit/adapters/alarmsadapter_organizer.cpp
@@ -32,12 +32,7 @@
 #include "ucalarm_p_p.h"
 
 static const QString alarmDatabase = QStringLiteral("%1/alarms.json");
-
-// The main alarm manager engine used from Saucy onwards is EDS (Evolution Data
-// Server) based. Any previous release uses the generic "memory" manager engine
-// which does not store alarm data, does not schedule organizer events and does
-// not give visual or audible reminding.
-static const QString alarmManager = QStringLiteral("eds");
+static const QString edsManager = QStringLiteral("eds");
 static const QString alarmManagerFallback = QStringLiteral("memory");
 static const QString alarmCollection = QStringLiteral("Alarms");
 
@@ -93,7 +88,7 @@ bool AlarmDataAdapter::setDate(const QDateTime &date)
         return false;
     }
     QDateTime dt = AlarmUtils::normalizeDate(date);
-    if (AlarmsAdapter::get()->manager->managerName() == alarmManager) {
+    if (AlarmsAdapter::get()->manager->managerName() == edsManager) {
         // use invalid timezone to simulate floating time for EDS backend
         dt = QDateTime(dt.date(), dt.time(), QTimeZone());
     }
@@ -395,10 +390,12 @@ AlarmsAdapter::AlarmsAdapter(AlarmManager *qq)
 {
     // register QOrganizerItemId comparators so QVariant == operator can compare them
     QMetaType::registerComparators<QOrganizerItemId>();
+    // ensure QOrganizerAbstractRequest::State is registered
+    qRegisterMetaType<QOrganizerAbstractRequest::State>("QOrganizerAbstractRequest::State");
 
     QString envManager = QString::fromLocal8Bit(qgetenv("ALARM_BACKEND"));
     if (envManager.isEmpty())
-        envManager = alarmManager;
+        envManager = edsManager;
     if (!QOrganizerManager::availableManagers().contains(envManager)) {
         qWarning() << "WARNING: alarm manager" << envManager << "not installed, using"
                    << alarmManagerFallback;
-- 
2.39.5