Commit Graph
1174 Commits
Author SHA1 Message Date
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
Federico Mena Quintero 42b00ec052 Fix cut&paste error
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
2025-08-27 19:59:16 -03:00
Federico Mena Quintero 72762ee11d GcalEventWidget: remove the date-end property; it is unused
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
2025-08-27 19:59:16 -03:00
Federico Mena Quintero 7a814cc1f3 Move explanatory comment
Analogous to date-start

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
2025-08-27 19:59:16 -03:00
Federico Mena Quintero 6e10e746c3 GCalEventWidget: remove the date-start property; it is never used
Setting and getting the value always happens through
gcal_event_widget_set_date_start() and gcal_event_widget_get_date_start().

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
2025-08-27 19:59:16 -03:00
Federico Mena Quintero 2f86a7a77b Move explanatory comment
We'll remove the date-start property, so put its description in the
corresponding setter function.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/550>
2025-08-27 19:59:15 -03:00
ARAKHNID 616481b60c gui/event-popover: Always focus action button
Previously, if there was a meeting row, the join button would be focused
instead of the action button. This ended up being undesired behavior, so
it's been removed.

Closes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1445

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/626>
2025-08-26 17:47:49 +00:00
Hari Rana 1ab336009e views/month-view: Skip view when tabbing in event widget
Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1444
2025-08-25 21:33:58 -06:00
Daniele Ziaco 1f86255e33 gcal-event-widget: Update labels when time-format changes
When the time format changes in Settings,
events in the week/month views did not update at runtime.

This connects the appropriate signal so the widget updates immediately.

Fixes #1373

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/625>
2025-08-20 23:29:44 +00:00
Hari Rana 534fb3a83c gui: Update to libadwaita's custom properties and style classes
Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1440

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/624>
2025-08-18 19:59:43 -04:00
Hari Rana be0ba51481 gui: Replace dim-label with dimmed style class
`dim-label` is deprecated.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/624>
2025-08-18 18:37:25 -04:00
Jean-François Fortin Tam e56ef92abd gcal-month-cell: Fix a typo in a comment 2025-08-18 15:16:35 -04:00
Jean-François Fortin Tam e2a3d31532 month-cell: Use full-length month names when safe to do so
Full month names are easier to notice and read while scrolling,
and would be read more naturally by text-to-speech screen readers.

An exception must be made when today is near the beginning of the month,
as the weather forecast temperatures labels might also appear there.
In that case, use the abbreviated version of the month name label.

Fixes issue #962
2025-08-18 15:16:35 -04:00
Hari Rana 78e87fad4b gui/event-popover: Apply style to italicize
Using the italic attribute in the label property made the
attribute translatable, which is undesired.

Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1427
2025-08-02 15:20:36 -04:00
Emma Blink fbc181743b week-view: explicitly handle PgUp/PgDown via ShortcutController
ScrolledWindow handles PgUp/PgDown in bubble phase to trigger scrolling.
Which leads to inconsistent behaviour: scrolling when an event is focused,
and moving to the previous/next week when not. Explicitly handling the
shortcuts with a ShortcutController in capture phase makes it consistently
navigate to previous/next week.

Fixes #1409

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/618>
2025-07-27 16:23:40 +01:00
Hari Rana d477ac2d72 event-editor/multi-choice: Focus widget if increment/decrement buttons are pressed
This also re-sets the state flags of the buttons, because otherwise
the increment/decrement buttons lose their hovered state after
the widget gains focus.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/616>
2025-07-27 07:20:15 -04:00
Hari Rana 576c82b060 event-editor/multi-choice: Add focus ring around the entire widget
The current behavior of the widget makes it so keyboard focus
outlines the toggle button rather than the entire widget. In some
cases, the outline touches the edges of the label, which makes it
look cramped.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/616>
2025-07-19 17:55:11 -04:00
Jean-François Fortin Tam 1ab28d3e95 month-cell: Bold month name & 1st day labels
Make it easier to track which month you are crossing while scrolling.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/962
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/478>
2025-07-15 15:46:41 -04:00
Jean-François Fortin Tam 1b500973e6 month-cell: Simplify calls to day_of_month
We already had this local variable waiting to be used;
let's reuse it to avoid calling querying the date repeatedly.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/478>
2025-07-15 15:46:41 -04:00
Jean-François Fortin Tam 3e4ef6f9c7 event-editor: Hide Cancel & Delete when read-only
Read-only events show a "Done" button instead of the "Save" button.
The "Done" button does the same thing as "Cancel",
so the "Cancel" button is then redundant.

Likewise, it is impossible to delete events from read-only calendars,
as stated by the banner message in that dialog. In that case,
there's no reason to show a big "Delete" button that you can't click on.

Fixes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1168
2025-07-11 23:27:08 -04:00
Georges Basile Stavracas Neto 7282943d21 views/month: Remove useless function
The update_header_labels() was rendered useless after commit 1de447f7.

This was discovered by static-scan. Thanks for Arak for finding the
root cause.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1418
2025-07-11 13:33:13 -03:00
FineFindus a00a1f01bb gui/event-popover: Add export button
Adds an export button to the event popover, allowing users to export
the selected event as an ICS file.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1276
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/602>
2025-07-11 16:25:30 +00:00
Jean-François Fortin Tam c2b36c1161 shortcuts-dialog: Update F9 to "Toggle Sidebar"
Replace the "Open Calendars Menu" description by "Toggle Sidebar";
there is no more menu for it, and the shortcut was reassigned.
2025-07-10 10:45:41 -04:00
Jamie Gravendeel 48b9bcc0e8 window: Make view button tooltips HIG compliant
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/592>
2025-07-08 15:31:06 +00:00
Jamie Gravendeel 7eb65ded71 window: Use closures for view button tooltip text
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/592>
2025-07-08 15:31:06 +00:00
Hari Rana 684ed71711 css: Rework month view's box shadows
This makes the box shadows permanent.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/604>
2025-07-08 14:08:37 +00:00
Hari Rana a0b530298a views/month-view: Allocate more for grid height
This allocates two extra pixels for the grid's height to make
the cell borders hide below the footer.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/604>
2025-07-08 14:08:37 +00:00
ARAKHNID abcce2a1d5 shortcuts-dialog: match contents to actual shortcuts
!542 updated some shortcuts, notably Alt+1, Alt+2, and F8. These changes
weren't reflected in the shortcuts dialog.

This commit updates the shortcuts dialog so its listed shortcuts match
the actual shortcuts.

Closes #1404

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/614>
2025-07-06 18:44:08 -05:00
Hari Rana 110856ee1a views/month-cell: Don't assert icon_tooltip_binding
The g_assert line would exit the program whenever we tried targeting
a month cell from the inspector.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/601>
2025-07-05 18:06:05 -04:00
Hari Rana 8dd8538014 views/month-cell: Use GtkWidget APIs for retrieving margin
GtkStyleContext is deprecated.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/601>
2025-07-05 18:05:07 -04:00
Hari Rana ba716102b9 common/date-chooser: Make arrow left/right move focus across grid
This also notifies the user when out of bound with arrow buttons.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1036
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/608>
2025-07-05 21:07:50 +00:00
Hari Rana 032a71dde6 common/date-chooser: Skip calendar grid with tab
Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1036
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/608>
2025-07-05 21:07:50 +00:00
Hari Rana 6e4fe88e58 gui: Port GtkShortcutsWindow to AdwShortcutsDialog
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/611>
2025-07-02 20:50:31 -04:00
Georges Basile Stavracas Neto d16cc2bc68 utils: Remove get_source_parent_name_color
One less weird function lurking around.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/610>
2025-07-02 18:04:26 +00:00
Georges Basile Stavracas Neto 281191b5b3 gui/calendar-list: Add headers
This makes it easier to see which calendar belongs to which group.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1196
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/610>
2025-07-02 18:04:26 +00:00
Hari Rana 6ab0ef7386 gui/event-widget: Set child depending on the orientation
Commit https://gitlab.gnome.org/GNOME/gnome-calendar/-/commit/73abcf19b0e70fb6fdd45394169b00e21ea0734a
introduced a bug where it uses the wrong widget on
vertical orientation.

This patch fixes that bug by using the correct widget
for their respective orientation. It also removes the use of
AdwClamp, as it was clamping labels above a certain height requested.

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

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/607>
2025-06-30 15:00:59 -04:00
Hari Rana b368e1f674 views/agenda-view: Set accessible properties for list items
This is needed to have the screen reader read event information
out loud.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1036
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/606>
2025-06-30 16:18:06 +00:00
Georges Basile Stavracas Neto 4e7bc70450 gui/window: Cosmetics 2025-06-30 12:48:47 -03:00
Hari Rana d809192dd5 common/date-chooser: Wrap months
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:46 -04:00
Hari Rana 7a40a3be6a common/date-chooser: Add accessible labels to GcalMultiChoice widgets
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:27 -04:00
Hari Rana 7be43df099 event-editor/multi-choice: Always set focus-visible flag when focused
This is to ensure that the focus ring never disappears until
the toggle button is unfocused.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:24 -04:00
Hari Rana b4853da249 event-editor/multi-choice: Add keyboard interaction
A significant portion of the behavior was guided by the
"Date Picker Spin Button Example" page in the
ARIA Authoring Practices Guide (APG):
https://www.w3.org/WAI/ARIA/apg/patterns/spinbutton/examples/datepicker-spinbuttons/

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1036
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:21 -04:00
Hari Rana 5628a5f311 event-editor/multi-choice: Make up/down buttons unfocusable
Spin buttons' increment/decrement buttons are standardly not made
to be accessible/focusable.

This copies the behavior from the GtkSpinButton widget.

Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1036
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:19 -04:00
Hari Rana 2a7a4e3b30 event-editor/multi-choice: Implement GtkAccessibleRange
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:17 -04:00
Hari Rana 70b9fde162 event-editor/multi-choice: Implement GtkAccessible
This is needed to have the toggle button communicate with the
screen reader to use the parent widget to retrieve accessible
information, rather than the toggle button itself.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:15 -04:00
Hari Rana 196f86b4f4 event-editor/multi-choice: Use g_assert in public methods
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603>
2025-06-29 08:51:11 -04:00