Commit Graph
34 Commits
Author SHA1 Message Date
Hari Rana 49e0521b67 views/week-view: Adapt to high contrast
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/710>
2026-03-31 21:55:32 -04:00
Hari Rana 037ffd3700 gui/event-widget: Replace "context" property with context getter method
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702>
2026-03-23 19:30:02 +00:00
Hari Rana d9f02cee20 views/week-view: Replace "context" property with context getter method
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702>
2026-03-23 19:29:59 +00:00
Hari Rana 50e048c7e0 utils: Turn number of weekdays into a macro
While "7" may be obvious in the context of calendaring that
it represents the number of week days, it often gives me the
impression of it being a magic number when I'm hyperfocused on certain
parts of the codebase for several consecutive hours. Turning the
number into a macro helps me scan functions much more easily.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/674>
2026-03-08 21:53:40 -04:00
Federico Mena Quintero 172f07c44e gui/views/week-grid: Remove superfluous assignment
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/581>
2025-05-28 18:08:54 +00:00
Hari Rana 2bfa881c2d views/week-grid: Port to gtk_widget_compute_point
`gtk_widget_translate_coordinates` is deprecated.
2025-05-21 01:21:38 -03:00
Georges Basile Stavracas Neto 06ef0539e4 views/week: Properly math out selection positions
Commit 69ac7468e2 introduced a regression since it calculates the
height of the selection widget based on the Y position of end+1 cell,
which is the first cell of the next column in the case of the last
cell.

Fix that by mathing out properly.

Fixes: 69ac7468e2
Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1397
2025-05-04 17:16:18 -03:00
Georges Basile Stavracas Neto 5504872eb6 views/week: Better scope some variables
Move them to inner scopes, and make them signed integers.
2025-05-04 17:15:04 -03:00
Vishruth-Thimmaiah 749d7e96e8 gcal-week-grid: Make DnD highlight area height match event's duration
Fixes issue #1341
2025-04-21 19:40:30 +00:00
Georges Basile Stavracas Neto ed3e06dd0e views/week: Cleanup measurement code
It's lame but simply removing the code works.
2025-03-19 19:23:58 -03:00
Georges Basile Stavracas Neto f9ad1c2e7e views/week: Cleanup line rendering code
Remove copied style context calls, pass less arguments.
2025-03-19 19:23:58 -03:00
Georges Basile Stavracas Neto 60c2bd2138 views/week: Make selection widget permanent
And toggle its visibility instead, like the DnD widget.
2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto 81e881caa9 views/week: Use widget for drop target indicator
Gets rid of a few warnings
2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto fad962c6ed views/week: Cosmetics 2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto 280515a1b5 views/week: Simplify return statement
dnd.cell is never -1 in this code path.
2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto 5d60bfc797 views/week: Use anonymous struct for dnd
No functional changes.
2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto 69ac7468e2 views/week: Replace selection rendering with widget
Should get rid of a few warnings. No functional changes.
2025-03-19 19:23:57 -03:00
Georges Basile Stavracas Neto d7a6d95629 views/week: Use anonymous strict for selection
No functional changes.
2025-03-19 19:23:57 -03:00
Otávio Silva b25623071f view: Fix drag and drop issue with events in daylight saving time
When dragging and dropping events in week view during the week of
daylight savings time switch, events were off by one hour. This fixes this
behavior by using the util function gcal_date_time_add_floating_minutes.

Fixes #1198
2024-08-28 00:20:18 +00:00
Felipe Kinoshita c7d2854986 gcal-week-grid: Stop using gtk_widget_get_allocation
gtk_widget_get_allocation is deprecated, let's use
gtk_widget_get_width/gtk_widget_get_height instead.
2023-11-29 07:08:14 -03:00
Daniel Garcia Moreno 6afb5cf3a5 view: Fix daylight saving issue in week view
This patch fixes an issue when creating new events in week view the week
after the daylight saving change.

The problem was in the calc of the selected date, that's done couting
the 30 minutes slots and adding that minutes to the week_start datetime.
When there's a daylight saving change, the real date to select should be
adjusted. This patch adds a new util function to make it easy to add
minutes ignoring the tz so we can make this calc directly with
gcal_date_time_add_floating_minutes.

This also includes a new test file with some checks for the new util
function and spring / autumn changes.

This new function could be used in other places to fix specific issues
that could be caused by the same logic error, calculate a selection or
event position based on GDateTime operations.

Fix https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/482
2023-11-09 13:17:20 +00:00
Georges Basile Stavracas Neto d5a36d4ad2 view: Operate on ranges
This is the data struct we should be using everywhere now.
2023-08-11 15:13:44 -03:00
Georges Basile Stavracas Neto e47ee2dc17 views/week: Simplify variable with g_autoptr 2023-08-02 11:04:25 -03:00
Felipe Kinoshita 72eb199f84 general: Stop using get_allocated_width/height
gtk_widget_get_allocated_width and gtk_widget_get_allocated_height are
deprecated, let's use the recommended functions.
2023-05-30 05:13:34 -03:00
Georges Basile Stavracas Neto bedf4e610d views/week-grid: Use new signal helpers 2023-03-02 21:49:27 -03:00
Georges Basile Stavracas Neto 5329c2297b views: Don't show MOD_ALL
The only field that views may change using DnD is the start date
field (and, consequently, the end date), and that's exactly what
we must not show the MOD_ALL option for.

Don't show it.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/882
2022-10-17 23:37:13 -03:00
Georges Basile Stavracas Neto 6a5c0229b9 utils: Add boolean flag for showing MOD_ALL
This will be used by next commit to more finely control editing
of recurrent events.
2022-10-17 23:37:13 -03:00
Yosef Or Boczko 17bb795846 gcal-week-grid: Fix wrong x postion for events in RTL
Every event in RTL languages is drawn in the
wrong place. As a result the week view is totally unusable.

Fix this.

#817

Signed-off-by: Yosef Or Boczko <yoseforb@gmail.com>
2022-10-12 20:35:52 +03:00
Adrien Plazas cb439095a5 event-widget: Add the timestamp-policy property
This gives some control on what time is displayed on the widget. It will
be used to show the time of the end of an event in the agenda view.
2022-06-16 08:23:45 -03:00
Adrien Plazas 9c641fa597 week-grid: Allocate event widgets a valid size
This ensures event widgets are allocated at least their size request,
fixing critical errors and visual glitches.
2022-06-15 11:34:03 -03:00
Georges Basile Stavracas Neto ee5acbd493 Reimplement event drag n' drop
Reintroduce the code using GTK4 tooling for in-process DnD.
This is looking much better!
2022-02-12 13:08:50 -03:00
Georges Basile Stavracas Neto b31b16da17 week-view: Port to GTK4 2022-02-12 13:08:50 -03:00
Georges Basile Stavracas Neto a146b9050d project: Silence CI warnings 2020-10-31 16:55:06 -03:00
Georges Basile Stavracas Neto e67ebcfc50 project: Move all UI-related files to src/gui/
So we can have a nice separation.
2020-10-30 14:44:33 -03:00