From e11a3be44ceb6389155bbe8cfcfa7c69a7c1fd06 Mon Sep 17 00:00:00 2001 From: Trystan Mata Date: Mon, 1 Sep 2025 14:20:35 +0200 Subject: [PATCH] schedule-section: Skip updating recurrence limit if no repeat Part-of: --- 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 b9bea1d1..d6e9cc03 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,