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,
|