Federico Mena Quintero
a4d891aadd
New function to copy a GcalScheduleValues
...
These structs are immutable. Any changes will be made on a copy.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:17 -03:00
Federico Mena Quintero
939b60d6b4
gcal_schedule_section_apply(): extract an _apply_to_event() helper function
...
With this, there's no direct mutation of the self->event anywhere; the
_apply() function just uses self->event as a target for mutation
because that's what the surrounding architecture expects.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Federico Mena Quintero
70173639e4
gcal-schedule-section.c: Use the stored values instead of pulling them from the event every time
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Federico Mena Quintero
f51186c298
gcal_schedule_section_apply(): use the stored values as a reference
...
Also, update the values from the updated event at the end.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Federico Mena Quintero
68126bcfac
gcal_schedule_section_set_event(): set the widgets from the extracted values, not from the event
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Federico Mena Quintero
d44e6847c7
GcalScheduleSection: store the values when an event is set
...
We don't use them yet; just hooking things up for now.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Federico Mena Quintero
f75785a34c
GcalScheduleValues: new struct to hold values from a GcalEvent for the schedule widges
...
We'll move GcalScheduleSection to operate without a backing GcalEvent,
so we can add tests.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 19:59:16 -03:00
Titouan Real
42f891ff42
gui/event-editor: Add time zone selection
...
Creates a chooser managing a GDateTime. The chooser allows the user
to change the date, the time and the timezone independently.
This replaces the precedent GcalTimeChooserRow widget, because it is
easier to manage the different interactions with the user in a single
widget.
Co-authored-by: Georges Basile Stavracas Neto
<georges.stavracas@gmail.com >
2025-01-31 19:37:26 -03:00
Titouan Real
f031a608d7
event-editor: Init time-format correctly
2024-12-16 23:24:36 +01:00
Titouan Real
ca32033c60
event-editor: Use new rows for date and time
...
Make the event editor use GcalTimeChooserRows and GcalDateChooserRows to
prompt the user.
2024-12-16 17:41:39 -03:00
Hari Rana
21bfed06e9
schedule-section: Show date when selecting the same day next week
2023-08-02 12:38:53 +00:00
Titouan Real
cf1d70e6c7
Add condition to reset
2023-05-31 12:25:36 +00:00
Cyber Phantom
e2e7305971
gcal-schedule-section: Port "Repeat" to AdwComboRow
...
GtkComboBox is going to be deprecated in GTK 4.10.
This commit updates the "Repeat" rows in new schedule window to use AdwComboRow.
2023-04-22 10:14:22 +00:00
Felipe Kinoshita
2805b414f8
general: Use gtk_widget_set_visible
...
A lot of places were using gtk_widget_show/gtk_widget_hide, but those
methods are deprecated since Gtk 4.10.
Let's use gtk_widget_set_visible instead.
2023-03-03 19:14:09 -03:00
Milan Crha
21e5396bf5
event-editor: Fix possible use-after-free of recurrence until date
...
The GcalDateSelector returns an internal instance, while the 'until' date/time
is meant to be an own instance, which is freed by the GcalRecurrence instance
in its free function. That means the 'until' date/time is supposed to be reffed
when being assigned into the GcalRecurrence structure.
Closes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/892
2022-10-31 12:25:11 +00:00
Georges Basile Stavracas Neto
102346534a
event-editor/dialog: Improve detection of MOD_ALL exclusion cases
2022-10-17 23:37:13 -03:00
Georges Basile Stavracas Neto
23dedc0fc8
event-editor/schedule: Trivial autoptr cleanup
2022-10-17 23:37:13 -03:00
Georges Basile Stavracas Neto
82d8ec31ca
event-editor/sections: Add vfunc to check for changes
...
This will be useful for next commits where we will need to check
if the schedule section actually changed something.
2022-10-17 23:37:13 -03:00
Björn Daase
ad7ff65a4d
event-editor/schedule-section: Fix localization mix
...
The gcal_util_translate_time_string function is a plain copy of
gnome-shells shell_util_translate_time_string solving the same problem.
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/581
2022-02-12 17:43:49 +01:00
Björn Daase
02343e6b37
event-editor/schedule-section: Simply switch-case statement
2022-02-12 17:37:11 +01:00
Georges Basile Stavracas Neto
0751c2e93c
event-editor/schedule-section: Show times in local timezone
...
Preserve the original timezone when editing, but always display
the start and end times in local timezone.
2021-12-07 13:32:16 -03:00
Georges Basile Stavracas Neto
46aee00f65
event-editor-dialog: More schedule to GcalScheduleSection
2020-10-31 13:30:56 -03:00