Hari Rana
f4702dde1f
views/month-view: Remove offset
...
Since we're now relying on box shadows to render separators,
which don't contribute to layout, we no longer need to set some
sort of offset to compensate the separators.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/669 >
2025-11-27 11:52:31 +00:00
Georges Basile Stavracas Neto
4c4fc5a965
core/range-tree: Properly free nodes
...
It was missing the GDateTime *max field.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/664 >
2025-11-19 18:01:11 -03:00
Georges Basile Stavracas Neto
36d3837e0b
core/range-tree: Clear range from deleted nodes
...
Otherwise we leak the range.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/664 >
2025-11-19 17:43:04 -03:00
Jean-François Fortin Tam
e470ecfc25
quick-add-popover: Use semantic typographic wrapping of time ranges
...
Atomically maintain time ranges on the same line when possible.
This is done using invisible non-breaking whitespace characters.
When selecting a range of time in the week view's timetable,
this ensures eye-pleasing, natural-looking typography.
Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1503
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/661 >
2025-11-19 13:34:54 +00:00
Dimitrios Christidis
938195e6e2
edit-calendar: Remove unnecessary assignment
...
g_clear_pointer() sets it to NULL.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/662 >
2025-11-19 13:04:54 +00:00
Georges Basile Stavracas Neto
50217bba42
core/event: Cosmetics
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/663 >
2025-11-19 09:48:25 -03:00
Georges Basile Stavracas Neto
a884076dc5
core/event: Remove g_autoptr declaration
...
Turns out g_date_time_get_timezone() is transfer-none, so assigning it
to a g_autoptr variable is invalid.
Fixes 42f891ff42
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/663 >
2025-11-19 09:47:29 -03:00
Georges Basile Stavracas Neto
6bb52f53e5
core/event: Improve setup function
...
Use g_autoptr, shuffle some code around, and fix a memory leak.
2025-11-18 14:58:08 -03:00
FineFindus and Krifa75
2d9afa938f
gui/edit-calendar-page: allow exporting calendars
...
Adds an export option to the edit page, allowing users to export an
entire calendar at once.
Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/31
Co-authored-by: Krifa75 <yahiaoui.fakhri@gmail.com >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/615 >
2025-11-18 15:27:44 +00:00
Georges Basile Stavracas Neto
67ca9ed20c
utils: Watch calendars for read-only change
...
This should make the list model update itself whenever a calendar
changes between read-only and read-write.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/660 >
2025-11-18 12:09:01 -03:00
Hari Rana
81990357fe
quick-add-popover: Make rows behave like radio buttons
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:44:30 -03:00
Hari Rana
c624c9b53b
quick-add-popover: Rework population and update
...
This emits the `changed` signal, allowing us to filter out a wider
variety of calendars. It also allows us to remove the loops
that needed to re-run every time the user changed the default
calendar or closed the popover.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:44:29 -03:00
Hari Rana
b83498cb1f
quick-add-popover: Use calendar row widget
...
The calendar row widget also makes it easy for us to display
hidden calendars.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:42:39 -03:00
Hari Rana
7e63f5f7e2
calendar-row: Add APIs
...
Since the calendar row widget is becoming an expandable widget,
several APIs were added to the widget:
- `gcal_calendar_row_get_calendar`
- `gcal_calendar_row_add_suffix`
- `gcal_calendar_row_get_first_suffix_child`
- `gcal_calendar_row_add_header_class`
- `gcal_calendar_row_remove_header_class`
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:37:18 -03:00
Hari Rana
f8c5751174
calendar-row: Rename calendar-combo-row-item to calendar-row
...
Currently, the quick add popover implements its own row
widget for each calendar, which duplicates tons of unnecessary
code. This commit streamlines the calendar-combo-row-item row
widget to make it reusable elsewhere.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:37:07 -03:00
Hari Rana
324bde2c72
quick-add-popover: Port to libadwaita widgets and merge stack pages
...
Both stack pages are merged into one page to avoid additional
cycling through pages.
`GtkListBoxRow`s were replaced by `AdwActionRow`s with
`GtkCheckBox`es as children.
Closes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/90 ,
https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1003
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:33:23 -03:00
Hari Rana
ac6cccee53
quick-add-popover: Port to GListModel
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/362 >
2025-11-18 11:31:24 -03:00
Georges Basile Stavracas Neto
564ce76349
views/month: Don't manually set can-focus property
...
Now that we're meddling with child visibility, hidden rows shouldn't
be focusable. At least that's what Hari discovered :)
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/659 >
2025-11-08 22:02:49 -03:00
Georges Basile Stavracas Neto
084a495f5c
views/month: Hide invisible rows
...
Change the child-visible property of rows when allocating. It's safe
to do in allocation because it doesn't affect layout, just rendering.
Related:
https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/402
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/659 >
2025-11-08 21:18:55 -03:00
Hari Rana
0c09e41796
gui/quick-add-popover: Specify const for strings using gettext
...
`gettext` returns a static string.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/656 >
2025-10-31 09:40:44 -04:00
Hari Rana
c3098bf23a
gui/quick-add-popover: Automatically free strings
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/656 >
2025-10-31 09:39:05 -04:00
Hari Rana
eefea2f7f4
gui/quick-add-popover: Handle memory leaks
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/656 >
2025-10-31 09:31:23 -04:00
Philipp Sauberzweig
ef4c70fa4c
month-cell: Add pill style to first day of the month.
...
Add a pill style to the label of the first day of the month to make it easy to identify. Adjust the border radius of the existing pill style for the current date to be the same. Apply the font-weight using the new style class.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/647 >
2025-10-28 14:06:44 +00:00
Philipp Sauberzweig
6e97c05a14
views: Merge month name and date number into a single label.
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/647 >
2025-10-28 14:06:44 +00:00
Philipp Sauberzweig
e3df308e23
src/theme: Remove accent color background from today month cell.
...
Use the accent color background exclusively for the selected style.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/653 >
2025-10-24 12:41:34 +02:00
Trystan Mata
d8e22b5646
event-editor: Fix template update when updating all events
...
Change how the template end date is determined by mainly relying on the
new template start date:
- If all day, end date is start date plus 1 day (midnight enforced)
- If time-based, end date is start date plus the time span of the event
properties
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/635 >
2025-10-21 14:17:33 +00:00
Trystan Mata
e11a3be44c
schedule-section: Skip updating recurrence limit if no repeat
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/634 >
2025-10-21 14:12:21 +00:00
Trystan Mata
20274b0b94
editor-dialog: Fix time-slot timezones
...
Uses the local timezone if the event was originally all-day.
Also set the end time to 1:00 if start and end date are the same.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/641 >
2025-10-21 14:08:04 +00:00
Alice Mikhaylenko
2a73bbe974
gcal-utils: Fix gtk gettext domain
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/651 >
2025-10-19 16:56:23 +04:00
Philipp Sauberzweig
a32df2b070
views/month-cell: Remove dimming of out-of-month cells
...
The infinite scrolling month view obsoletes the out-of-month
dimming, as the view is no longer fixed in a specific month, nor
does it make out-of-month cells insensitive.
Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1145
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/646 >
2025-10-17 18:06:17 -04:00
Lukáš Tyrychtr
3a544b22fc
week-view: Add tooltip to the all day events expander
...
This adds a tooltip to the all day events expander button,
indicating whether the expander will expand or collapse
upon activation.
Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1449
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/637 >
2025-10-17 13:59:26 -04:00
Hari Rana
3a93a4004d
views/month-popover: Use adw_lerp() function
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/650 >
2025-10-17 17:08:42 +00:00
Jean-François Fortin Tam
3e31bd1641
Revert "event-editor/notes: Add height-request"
...
The widget already auto-adjusts its height depending on text contents.
Let it use as much or as little height it needs.
This avoids extra scrolling in some cases.
This reverts commit a09c02591e .
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1455
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/636 >
2025-10-17 17:04:00 +00:00
Daniel Rusek
651fb25ab6
metainfo: Change component type to "desktop-application"
...
The "desktop" component type is deprecated
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/639 >
2025-10-17 16:56:41 +00:00
Philipp Sauberzweig
fc90d259b2
gui/views: Fix event margins in week header
...
Margins are already applied to the event widget itself through CSS.
This commit removes unnecessary margins and row spacing to bring
it in line with the month view.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/649 >
2025-10-17 12:27:03 -04:00
Jean-François Fortin Tam
28e8e07219
gcal-event-editor: Add mnemonic for "Delete Event"
...
This lets keyboard-centric power users delete events in 1 second.
It can be useful in rare situations when you need to delete many events.
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1313
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/628 >
2025-10-10 13:27:46 +00:00
Philipp Sauberzweig
2368a9f29d
gui: stop dimming the sidebar headings
2025-10-07 18:36:03 +00:00
Philipp Sauberzweig
4a3982848a
css: Use larger fraction of event-bg-color for event widget background color.
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/643 >
2025-10-06 18:47:32 +00:00
Philipp Sauberzweig
f78a2f33ed
css: Use standard view-fg-color instead of tinted color for event widget label
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/643 >
2025-10-06 18:47:32 +00:00
Georges Basile Stavracas Neto
727d05edff
49.0
2025-09-14 10:20:21 -03:00
Trystan Mata
38e355c3b1
calendar-navigation-button: Fix active-date reference
...
Increase active-date reference count so the button and the window have
their own reference.
This fix the reference issue while the window is finalizing.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/638 >
2025-09-04 15:29:01 +00:00
Trystan Mata
66542a6673
edit-calendar-page: Check calendar before setting name while disposing
...
The calendar is not initialized when opening and closing the
calendar management dialog.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/638 >
2025-09-04 15:29:01 +00:00
Trystan Mata
0b25305aa4
view/month-view: Fix seeking ancestor of NULL
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/638 >
2025-09-04 15:29:01 +00:00
Philipp S
c993c6c4ed
css: Remove outdated event style class
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/633 >
2025-09-04 15:21:22 +00:00
Georges Basile Stavracas Neto
8c6c417347
49.rc
2025-08-30 12:33:48 -03:00
Trystan Mata
15a78b4063
gui/event-editor: Fix GcalDateChooserRow date selected changed callback
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/632 >
2025-08-30 16:38:44 +02:00
Jean-François Fortin Tam
d86d0f7e1e
event-editor: Focus the whole title entry on start
...
This avoids the text cursor being positioned at the start of the entry.
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1452
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/631 >
2025-08-30 00:24:15 -04:00
Hari Rana
9213a4fbe4
gui/window: Only set focus when popover is explicitly closed
...
The window would either set focus to the event widget or a
focusable ancestor, no matter how the event popover was being
closed.
This caused a major accessibility regression where,
whenever the event editor dialog opened from the event
popover, the window set focus to the event widget instead of
the content inside the dialog, which made the dialog incapable
of navigating through until the dialog was focused. This also
prevented mnemonics from being triggered.
This patch addresses that bug by only setting focus whenever
the popover is being closed explicitly; as in, when the user
presses outside the popover to hide it or pressing escape.
Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1398
2025-08-29 21:45:59 -06:00
Federico Mena Quintero
309a91ddcb
Move GcalEventSchedule to new files gcal-event-schedule.[ch]
...
I am not sure that these should be in src/core, since the
gcal_event_schedule_set_*() functions do have a bunch of GUI policy.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 20:18:52 -03:00
Federico Mena Quintero
8a653ec99d
Rename GcalScheduleSectionValues -> GcalEventSchedule
...
And correspondingly, gcal_schedule_section_values_*() -> gcal_event_schedule_*()
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550 >
2025-08-27 20:18:52 -03:00