Commit Graph
5943 Commits
Author SHA1 Message Date
Hari Rana 7886ef6f19 views/month-view-row: Get header height during calculations
This is needed for the next commit, which adds gaps between
event widgets.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/813>
2026-08-19 09:25:14 -04:00
Jiri Grönroos fab4614a6a Update Finnish translation 2026-08-17 16:32:06 +00:00
Alexander Alexandrov Shopov 74d6f71429 Update Bulgarian translation 2026-08-16 11:24:08 +00:00
Kaiky CintraandRyan Oliveira 3a6d120863 views/month-view: Implement drag and drop handling on month view
Replicate the week grid implementation of drag-and-drop to
allow events to be dropped on top of other events in the month view.

Closes: #1092

Co-authored-by: Ryan Oliveira <ryan.oliveiraf@usp.br>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/806>
2026-08-14 22:24:01 +00:00
Kaiky Cintra 3aed975bf5 views/month-cell: Remove drag and drop handling from month cell
Co-authored by: Ryan Oliveira ryan.oliveiraf@usp.br

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/806>
2026-08-14 22:24:01 +00:00
Hari Rana 4fc242fd7c views/agenda-view-day-row: Adjust focusability of row and event widget
For unknown reasons, the `::row-activated` signal is not emitted
whenever the user presses an activation button on the keyboard
such as Enter or Space, even though the list box row has focus.

Ideally, we want the list box rows to be activatable, so that
activating them will simply emit the "event-activated" signal and
pop up the popover.

Since this doesn't work, the next best thing is to make the event
widgets themselves focusable and the list box rows unfocusable.
This will unfortunately lose the ability to navigate with arrow
keys, as well as Home/End and Page Up/Down. However, the user will
at least be able to activate them and access events in
the agenda view.

A `FIXME` label has been added because this should be fixed as soon
as possible.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/807>
2026-08-14 21:40:58 +00:00
Hari Rana 506b07fe1c views/agenda-view-day-row: Describe row
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/807>
2026-08-14 21:40:58 +00:00
Hari Rana 63db10cc92 views/agenda: Make list items unfocusable
Without this, the entire row would become focusable, which is
an undesired functionality for people who navigate with a keyboard.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/807>
2026-08-14 21:40:58 +00:00
Hari Rana b4dd889615 flatpak: Apply more config options in evolution-data-server and libical
`WITH_CXX_BINDINGS` is deprecated in libical 4, so it's replaced with
`LIBICAL_CXX_BINDINGS`.

`LIBICAL_JAVA_BINDINGS=False` is required for libical 4.

Since we use `ENABLE_OAUTH2_WEBKITGTK4=OFF` in evolution-data-server,
we could also use `ENABLE_OAUTH2_WEBKITGTK=OFF` alongside.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/811>
2026-08-14 07:52:01 -04:00
Abduqadir Abliz aae55c3ce8 Update Uighur translation 2026-08-12 20:06:45 +00:00
Aurimas Černius 9460912784 Update Lithuanian translation
(cherry picked from commit c85109a7f59a81b8ed2fdb6e25504acbe1a386e5)
2026-08-10 19:02:21 +00:00
Francisco Diéguez Souto a696fa7add Update Galician translation 2026-08-10 07:21:50 +00:00
Nathan Follens 4df248c8ee Update Dutch translation 2026-08-09 14:31:40 +00:00
Xavi Ivars 5ec52fc712 Update Catalan translation 2026-08-09 11:08:43 +00:00
Andika Triwidada 697a06ad05 Update Indonesian translation 2026-08-09 05:03:27 +00:00
Davide Ferracin 9551704022 Update Italian translation 2026-08-08 16:31:54 +00:00
Georges Basile Stavracas Neto 6d44af6656 gui/event-widget-pool: Ensure event widgets are visible
They might have been made invisible after e.g. being deleted.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1623
Fixes: 59cae05929
2026-08-06 12:04:50 -03:00
Miika Brenna Jarsve a7f7733eb1 Update Norwegian Bokmål translation 2026-08-05 23:20:35 +00:00
Danial Behzadi 5ec024f428 Update Persian translation 2026-08-05 20:37:58 +00:00
Asier Saratsua Garmendia 4e2419c357 Update Basque translation 2026-08-03 10:13:05 +00:00
luming zh 25a0fe9528 Update Chinese (China) translation 2026-08-03 01:46:23 +00:00
luming zh bc5acbce6d Update Chinese (China) translation 2026-08-03 01:29:54 +00:00
Vasil Pupkin a8258b09cb Update Belarusian translation 2026-08-01 10:18:11 +00:00
Quentin PAGÈS 787c5af898 Update Occitan translation 2026-07-31 19:38:04 +00:00
Niklas Wimmer a17e6324e1 Post-release version bump
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/803>
2026-07-31 05:46:51 -04:00
Niklas Wimmer a79065f58b Release 51.beta
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/803>
2026-07-31 05:46:48 -04:00
Ekaterine Papava bcdee766bb Update Georgian translation 2026-07-31 05:17:01 +00:00
Yuri Chornoivan 92016d877e Update Ukrainian translation 2026-07-30 17:22:19 +00:00
Yaron Shahrabani 106f6bf848 Update Hebrew translation 2026-07-30 09:57:06 +00:00
Baurzhan Muftakhidinov 6eee93b57b Update Kazakh translation 2026-07-30 06:24:47 +00:00
Daniel RusekandPatrik Sivek 430bc1ad18 Update Czech translation
Co-authored-by: Patrik Sivek <sivekpatrik@gmail.com>
Reviewed-by: Daniel Rusek <mail@asciiwolf.com>
2026-07-28 21:56:35 +00:00
Hari Rana 68d820b2f7 Revert "views/month-view: Remove offset"
For a while, we have been setting child visibility to false, which
hid the horizontal line separators. However, I started scrolling in
the month view today and came to realize that they were disappearing
sporadically when scrolling upwards.

This happens because we use the `box-shadow` CSS property to apply the
box shadow a pixel above the month view row, which keeps it visible
in the view even when the month view row itself is no longer in
the page. Adding a pixel fixes that.

This reverts commit f4702dde1f.
2026-07-28 08:14:43 -04:00
Artur S0 7d6cee92c2 Update Russian translation 2026-07-24 10:55:22 +00:00
Martin 87a376ce17 Update Slovenian translation 2026-07-22 14:43:46 +00:00
Niklas Wimmer ec92fab118 tests/event: Validate schedule comparison
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/792>
2026-07-22 10:27:58 -04:00
Niklas Wimmer 81954048f9 core/event: Fix schedule comparison function
Fixes a few problems in the schedule comparison code:

- Same recurrence pointer short-circuits to TRUE: a pointer to the
  same recurrence is not a sufficient condition, because the dates
  could still be different (this is especially true if the recurrence
  is NULL for both events, but also holds if that is not the case).
  Also deleted the explicit check if only one of the recurrence
  pointers is NULL, because that is the first thing that is checked
  in `gcal_recurrence_is_equal()` anyway.
- Date comparisons only check if the date moved into a specific
  direction: the correct logic is to check if they are not the same,
  no matter in which direction the date moved.
- The time is not compared: for non all-day events, it is necessary
  to compare the time values too. The glib function that is now used
  for that also checks the date, so these checks can be collapsed
  into one.

For the second and third point it seems like some things got a bit
mixed up in
https://gitlab.gnome.org/GNOME/gnome-calendar/-/commit/2ee6dfc5e7bd5823bee5029a7ac3a32d3c247ba9:

- The `gcal_schedule_section_changed()` implementation already used the
  `g_date_time_equal()` function (which is now used again).
- It was `gcal_schedule_section_day_changed()` which only compared the
  dates using `gcal_date_time_compare_date()`, but this function was
  only used for edits to recurring events to determine whether to
  allow changing all instances. This commit now exposes a regression
  in this part of the code, which is tracked separately in
  https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1613.

Fixes: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1612>
See: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/783>
See: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1613>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/792>
2026-07-22 10:27:57 -04:00
Niklas Wimmer a1b55b5ca9 tests/range-tree: Validate insertions and removals
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/798>
2026-07-22 14:13:36 +00:00
Niklas Wimmer b83a89a2e7 tests/range: Validate the compare function
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/798>
2026-07-22 14:13:36 +00:00
Niklas Wimmer ea2c637b35 core/range: Fix compare function
Fixes a regression from
https://gitlab.gnome.org/GNOME/gnome-calendar/-/commit/62345668748b571939c1c7b441e44664a05a0287

Essentially, `gcal_range_compare()` is just a faster subset of
`gcal_range_calculate_overlap()`. The commit that introduced this
regression accidentally flipped the sign of the compare function,
which made it no longer match with the implementation of overlap.

The function's implementation also did not match its doc comment,
returning any integer instead of only `-1`, `0` or `1`. Since the
behavior described in the doc comment is more commonly used for
comparison functions, the implementation was adjusted to match it.

To avoid any such failures in the future, the next commits will
add tests to validate.

Fixes: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1615>
See: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/770>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/798>
2026-07-22 14:13:36 +00:00
Antonio Marin 173d8a1d67 Update Romanian translation 2026-07-22 14:10:26 +00:00
Niklas Wimmer 6ea211fbf9 flatpak: Remove intltool module
GNOME Calendar itself stopped depending on intltool in 3.25.3. After
intltool got removed from org.gnome.Sdk, it was added to our manifest
in 2019, because EDS still depended on it.

EDS stopped depending on intltool in 2021 (see linked MR).

Since this was the only module we used from the `shared-modules`
project, I also removed that git submodule.

See: <https://gitlab.gnome.org/GNOME/evolution-data-server/-/merge_requests/78>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/802>
2026-07-22 13:24:28 +00:00
Cheng-Chia Tseng b00107d024 Update Chinese (Taiwan) translation
Reviewed-by: Cheng-Chia Tseng <pswo10680@gmail.com>
Reviewed-by: Yi-Jyun Pan <pan93412@gmail.com>
2026-07-16 08:08:28 +00:00
Hari Rana 5f21144fbb views/month-view-row: Additive inverse in right-to-left languages
"Additive inverse" basically means transforming a positive number
into a negative equivalent, or vice-versa; for example, from 5 to -5.

Instead of inverting conditions in right-to-left languages to
compare the X coordinate, a much simpler approach to this is to
normalize the X coordinate by applying additive inverse in
right-to-left languages.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/744>
2026-07-05 14:56:44 -04:00
Hari Rana 1f06a71ee0 views/month-cell: Set child visible instead of sensitive
When hovering over the bottom side of a month cell regardless of
the sensitivity state of the overflow button, it queries the
button's tooltip text. Using `gtk_widget_set_child_visible()`
fixes that issue.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/743>
2026-07-04 23:04:29 -04:00
Hari Rana cc6edfed79 views/month-cell: Replace overlay with box and empty bin
Since we don't make use of the overlay anymore, it's best to remove
it altogether.

This also changes the behavior of the widgets a bit: It adds an
empty AdwBin widget which expands vertically, allowing us to avoid
aligning the header and overflow button.

The pattern goes from reducible (where we deduct the overflow
height to retrieve the content) to additive (where we add the
overflow height to the content height), which requires us to
adapt GcalMonthViewRow with this new behavior.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/743>
2026-07-04 23:04:29 -04:00
Victoria Niedzielska 68376efe6b Update Polish translation
Co-authored-by: Victoria Niedzielska <victorian@gnome.org>
2026-07-03 16:10:23 +00:00
Martin 86cbf871ea Update Slovenian translation
Co-authored-by: Martin <miles@filmsi.net>
2026-06-30 16:48:22 +00:00
Antonio Marin f6a39c1326 Update Romanian translation
Co-authored-by: Antonio Marin <gnmer.6qxyg@slmail.me>
2026-06-30 08:15:56 +00:00
Georges Basile Stavracas Neto 3d0f7c0d9a Post-release version bump 2026-06-29 21:55:58 -03:00
Georges Basile Stavracas Neto 3a38f92f7a 51.alpha 2026-06-29 21:55:10 -03:00