File: schedule-section-Skip-updating-recurrence-limit-if-no-rep.patch

package info (click to toggle)
gnome-calendar 49.0.1-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 6,160 kB
  • sloc: ansic: 32,304; xml: 131; makefile: 8
file content (53 lines) | stat: -rw-r--r-- 2,088 bytes parent folder | 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
From: Trystan Mata <trystan.mata@tytanium.xyz>
Date: Mon, 1 Sep 2025 14:20:35 +0200
Subject: schedule-section: Skip updating recurrence limit if no repeat

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/652>
(cherry picked from commit 87e068be52ee672f1490a8837c5839e34c32d8c7)

Origin: future 49.1
---
 src/gui/event-editor/gcal-schedule-section.c | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/src/gui/event-editor/gcal-schedule-section.c b/src/gui/event-editor/gcal-schedule-section.c
index b9bea1d..d6e9cc0 100644
--- a/src/gui/event-editor/gcal-schedule-section.c
+++ b/src/gui/event-editor/gcal-schedule-section.c
@@ -433,16 +433,6 @@ get_recurence_limit_type (GcalScheduleSection *self)
   return (GcalRecurrenceLimitType) item;
 }
 
-static void
-on_repeat_duration_changed_cb (GtkWidget           *widget,
-                               GParamSpec          *pspec,
-                               GcalScheduleSection *self)
-{
-  GcalRecurrenceLimitType limit_type = get_recurence_limit_type (self);
-  GcalEventSchedule *updated = gcal_event_schedule_set_recur_limit_type (self->values, limit_type);
-  update_from_event_schedule (self, updated);
-}
-
 static GcalRecurrenceFrequency
 get_recurrence_frequency (GcalScheduleSection *self)
 {
@@ -453,6 +443,19 @@ get_recurrence_frequency (GcalScheduleSection *self)
   return (GcalRecurrenceFrequency) item;
 }
 
+static void
+on_repeat_duration_changed_cb (GtkWidget           *widget,
+                               GParamSpec          *pspec,
+                               GcalScheduleSection *self)
+{
+  if (get_recurrence_frequency (self) != GCAL_RECURRENCE_NO_REPEAT)
+    {
+      GcalRecurrenceLimitType limit_type = get_recurence_limit_type (self);
+      GcalEventSchedule *updated = gcal_event_schedule_set_recur_limit_type (self->values, limit_type);
+      update_from_event_schedule (self, updated);
+    }
+}
+
 static void
 on_repeat_type_changed_cb (GtkWidget           *widget,
                            GParamSpec          *pspec,