Commit Graph
5525 Commits
Author SHA1 Message Date
mindonwarp 4fb5c1ebb3 event-editor: Pass only attendees to the details page instead of event
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/671>
2026-01-21 19:37:53 +00:00
mindonwarp 0149b7a042 core/editor: Replace g_return_* with g_assert
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/671>
2026-01-21 19:37:53 +00:00
mindonwarp ba3ca061ce event-editor: Add attendees section and details page
UX/UI designed by Philipp Sauberzweig (@PhilippSauberz).

The event editor dialog is now a NavigationView and the participants
details open in a separate page. Group attendees/participants in
AdwPreferencesGroups and bind groups'
ListBox widgets to backing filter models. These are just "views" into a
single GListStore containing all the event attendees.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/671>
2026-01-21 19:37:52 +00:00
mindonwarp 884855ee0b core: Add a wrapper object for event organizer
Add a wrapper for the ECalComponentOrganizer. An instance of this type
is kept as part of the GcalEvent structure.

The GcalEventOrganizer is just a "proxy" to the ECalComponentAttendee
and its purpose is to unclutter the GcalEvent interface and provide a
bindable base for a UI widget.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/671>
2026-01-21 19:37:52 +00:00
mindonwarp 4f6e705e8b core: Add a wrapper object for attendees
Wrap ECalComponentAttendee structure in calendar's own structure to
prevent propagating the dependency on libecal types to the ui layer.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/671>
2026-01-21 19:37:51 +00:00
Makoto Sakaguchi e0d95715f5 Update Japanese translation 2026-01-19 11:31:30 +00:00
Sabri Ünal 5c2f8387f2 Update Turkish translation 2026-01-19 11:30:34 +00:00
Aefgh Threenine 103ada20d7 Update Thai translation
(cherry picked from commit caa76a961edabe29ecfbb1b0b1af37c0144c6aa9)
2026-01-18 04:58:04 +00:00
Maximiliano Sandoval bf922f173c window: Add Ctrl+W shortcut for closing the window
Add the common shortcut as per:
https://developer.gnome.org/hig/reference/keyboard.html#basic-shortcuts
2026-01-16 16:42:22 -05:00
Jean-François Fortin Tam ab76cd59be Create only DISPLAY alarms in reminders, not AUDIO
Creating "AUDIO" VALARM notification actions causes endless problems:
users may only hear a sound notification (with no visuals), if at all,
and most other apps don't honor nor support editing audio-only alarms.
Other systems typically play a sound automatically on "DISPLAY" alarms.

https://datatracker.ietf.org/doc/html/rfc5545#section-3.6.6 says:

> Multiple mutually independent "VALARM" calendar components
> can be specified for a single "VEVENT" or "VTODO" calendar component.

However, each component states:

> 'action' and 'trigger' are both REQUIRED,
> but MUST NOT occur more than once.

To keep the UI simple, we should pick one or the other; "DISPLAY" it is.
Remove "AUDIO" alarm code and add a warning to never add it again.

Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1280
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/680>
2026-01-16 01:18:28 +00:00
Zoey Ahmed c3635967bc window: Go back/forth views using hardware buttons
Refactor `on_window_previous_date_activated_cb` and
`on_window_next_date_activated_cb` into separate methods for going to
the prev/next view, to be used in the callbacks for both the
forward/back buttons in the UI, and for the `Gtk.GestureClick` callbacks
that listens for the hardware buttons to be pressed.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1494
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/682>
2026-01-15 17:02:17 +00:00
BoF ButterflyOfFire 6270b5938f Update Kabyle translation 2026-01-14 16:18:02 +00:00
Artur S0 65677acf1c Update Russian translation 2026-01-11 23:10:49 +00:00
Baurzhan Muftakhidinov 32c8a97d8e Update Kazakh translation
(cherry picked from commit b59039d3f6815d4d9f63d684bae422a8c883ebf5)
2026-01-08 17:56:44 +00:00
Kjartan Maraas 2fe4661779 Update Norwegian Bokmål translation
(cherry picked from commit 6933b0986d530e3f5ccaeda33fc1884e9d7a7446)
2026-01-08 15:09:52 +00:00
Jean-François Fortin Tam e6a4c204ab gui/calendar-list: Ellipsize long headers labels
This prevents long calendar accounts' names from breaking the whole UI.

Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1531
2026-01-06 10:53:48 -05:00
Georges Basile Stavracas Neto ce26a9b8e1 Post-release version bump 2026-01-05 20:03:20 -03:00
Georges Basile Stavracas Neto fcc8845669 50.alpha 2026-01-05 20:02:30 -03:00
Fabio Tomat 2ea32d6a74 Update Friulian translation 2026-01-03 20:28:39 +00:00
Antonio Marin 12ac446959 Update Romanian translation 2026-01-03 17:21:30 +00:00
Jean-François Fortin Tam 719f60e289 appdata: Add keywords to improve discoverability
The description is not used for searching by some software center apps,
like GNOME Software.

Use keywords to make this app easier to find, as per this documentation:
https://freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-keywords
2025-12-31 14:49:03 -05:00
99aea45334 utils: Honor "week-start-day" gsetting on startup
This lets users override the "first day of the week" through a
GSetting, instead of being forced to use whatever is defined by
the locale, which often may not be correct for their culture,
language or location.

Currently this would apply only upon (re)starting the app.

Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/160
Co-authored-by: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Co-authored-by: Titouan Real <titouan.real@gmail.com>
Co-authored-by: Adrien Plazas <aplazas@gnome.org>
2025-12-28 13:02:27 -05:00
Hari Rana 6d47fc1db8 views/month-view-row: Add offset when allocating event widgets
The SEPARATOR_OFFSET constant is for the box shadow property
defined in month cells' CSS. Since the box-shadow property does
not contribute to layout, so these offsets need to be set manually.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/676>
2025-12-28 17:04:32 +00:00
Hari Rana b0a5ff18d5 views/month-view-row: Compute exact width of event widgets
Currently, month cells are using `round()` to allocate the width,
whereas event widgets are using implicit double → int conversion,
which causes event widgets to be offset by a pixel, and thus
touches month cells' borders.

This new approach guarantees the exact width of the event widgets
by invoking `round()`.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/676>
2025-12-28 17:04:32 +00:00
Quentin PAGÈS 7577e2a1d5 Update Occitan translation 2025-12-26 09:14:53 +00:00
Martin 033c7f4124 Update Slovenian translation 2025-12-22 22:58:25 +00:00
Piotr Drąg c466c6d1e0 Update POTFILES.in 2025-12-22 17:05:00 +01:00
Lukáš Tyrychtr 6c36048ae3 gcal-search-button: Announce number of search results to screen reader
We do not have anything like live regions yet, so put raw announce calls
in the right place.

Fixes #1470.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/675>
2025-12-21 21:52:58 -03:00
Juliano de Souza Camargo f07f4ad25d Update Brazilian Portuguese translation 2025-12-15 14:17:48 +00:00
Jordan Petridis 4e0902c867 Revert "tests: Disable a pair of tests"
This reverts commit 5a0aef6def.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/667>
2025-12-06 00:55:43 +02:00
Georges Basile Stavracas Neto 484ce89b0f flatpak: Add test args
Much like with finish-args, this makes the permissions
available to the sandbox when using the flatpak-builder
test-runner.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/667>
2025-12-06 00:55:43 +02:00
Georges Basile Stavracas Neto 0d765c4ff6 flatpak: Don't run in debug mode
Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1234
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/667>
2025-12-06 00:55:43 +02:00
Adrien Plazas 9c1a7fecfc week-header: Fix end of week comparison
This fixes comparison of an event to the end of the week, so "end" can't
incorrectly be 7 anymore.

Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/835

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/672>
2025-12-03 20:50:15 +01:00
Artur S0 c6849e405c Update Russian translation 2025-12-02 16:56:12 +00:00
Antonio Marin 3bd25d42ce Update Romanian translation 2025-12-01 17:32:20 +00:00
Sabri Ünal 1bdffc182a Update Turkish translation 2025-11-29 15:30:46 +00:00
Hari Rana 82198e0b8f views/month-view: Smoothen discrete scrolling animation
The current animation duration paired with the ease-out-quad function
eases out imperceptibly fast (almost instantaneously), which makes the
overall animation feel laggy.

This patch addresses the aforementioned issue by increasing the
duration to 500ms. This then makes the ease-out-quad function ease
out relatively slowly, which is addressed by changing the function
to ease-out-quart - a function that eases out much quicker.

As a result, the animation should feel much more fluid and natural,
without giving the impression that it's 3 times slower.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1125
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/670>
2025-11-29 08:59:50 -05:00
Hari Rana 0a8bd0e994 views/month-view: Use ease-out-sine when snapping to row
It should feel a little bit more natural as it is eases out slower.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/670>
2025-11-29 08:59:33 -05:00
Hari Rana bf86699f84 views/month-view: Check for user's reduced motion setting
"gtk-interface-reduced-motion" is the modern alternative to
"gtk-enable-animations" but gtk-enable-animations will be
kept as as a fallback.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/670>
2025-11-29 08:47:20 -05:00
Hari Rana 4c9d7e5a79 build: Depend on GTK4 4.21.2
We'll use the new "prefers-reduced-motion" property in GtkSettings.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/670>
2025-11-29 08:46:55 -05:00
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
Quentin PAGÈS 5de33a8ffc Update Occitan translation 2025-11-27 09:07:36 +00:00
Jordan Petridis 4d2cd89c49 test/test-server: Include gcal-utils header
This is a followup to 008b914f9e
in order to use gcal_create_soup_session.

The test was disabled and the breakage sneak through.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/668>
2025-11-24 09:01:23 +02:00
Quentin PAGÈS ddf295ddc8 Update Occitan translation 2025-11-22 17:30:17 +00:00
Andika Triwidada a82b4d45a5 Update Indonesian translation
(cherry picked from commit 77e105a8d901746e05eb2b658ce8569e222a4c5f)
2025-11-21 02:19:47 +00:00
Martin 71a8b8ec82 Update Slovenian translation 2025-11-20 17:26:44 +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 13dc2ff3be tests/daylight-saving: Fix string leaks
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/664>
2025-11-19 17:52:53 -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
Georges Basile Stavracas Neto 2d8d50591e tests/utils: Declare ICalTimes with g_autoptr
The corresponding ICalComponent functions are transfer full.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/664>
2025-11-19 17:27:31 -03:00