Hari Rana
99463b9a62
event-editor/multi-choice: Set accessible label without connecting signal
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/840 >
2026-09-19 11:54:05 -04:00
Hari Rana
2bab7bdc3a
event-editor/multi-choice: Remove animate property
...
We no longer use this property. Removing it will then allow us to
directly set the label without having to use GtkStack, but this
will be done in a later commit.
This also sets all transitions to "none".
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/840 >
2026-09-19 11:54:05 -04:00
Hari Rana
3185997f38
event-editor/multi-choice: Remove wrap property
...
We no longer have a use case which requires us to keep the
`wrap` property to FALSE, so this patch removes that property
while keeping the wrap behavior.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/840 >
2026-09-19 11:54:04 -04:00
Hari Rana
b8e06d32a1
event-editor/multi-choice: Remove unused overrides
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/840 >
2026-09-19 11:54:04 -04:00
Hari Rana
14c20483ae
event-editor/multi-choice: Use G_DEFINE_FINAL_TYPE_WITH_CODE()
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/840 >
2026-09-19 11:54:01 -04:00
Hari Rana
39cee3cbc3
event-editor/multi-choice: Check if destructor exists before clearing
...
Without this check, the app supposedly crashes when we close it.
GtkListBox frees itself the same way.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/723 >
2026-03-12 01:12:29 +00:00
Georges Basile Stavracas Neto
0c1636b7aa
gui/multi-choice: Use g_clear_pointer more
...
Just a cosmetic improvement.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/721 >
2026-03-10 20:45:35 -03:00
Guillaume Bernard
5a663ee671
multi-choice: Fix i18n of navigation button tooltips
...
The previous approach built tooltip strings by formatting a translated
category name (e.g. "Month") into a generic "Previous %1$s" template.
This is a classic gettext concatenation anti-pattern: languages with
grammatical gender (French, Spanish, German, …) need the adjective to
agree with the noun, and word order can differ from English, so
translators of the format string have no way to produce a correct
result.
Replace the format strings and their helper callbacks with two explicit
GObject properties on GcalMultiChoice: prev-button-tooltip-text and
next-button-tooltip-text. The buttons in the template now bind to
these properties directly. Each widget instance in gcal-date-chooser.blp
sets its own fully self-contained translatable string ("Previous month",
"Next month", "Previous year", "Next year"), giving translators all the
context they need to handle gender and word order correctly.
Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1547
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/721 >
2026-03-10 20:43:02 -03:00
Fabian Hügel and Maximiliano Sandoval
8af5298e50
event-editor/multi-choice: Add prev/next value callbacks
...
These callbacks will be used in the next commit to jump to the
first day of the month.
Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1103
Co-authored-by: Maximiliano Sandoval <msandova@gnome.org >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/369 >
2026-02-21 20:22:25 -05:00
Zoey Ahmed
272f7fd34f
multi-choice: Bind category to tooltip + a11y label
...
This adds a tooltip to the multi choice buttons, with the text
"Previous/Next (category)". This fixes the warnings in the date
chooser popover.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/681 >
2026-01-29 02:21:43 +00:00
Zoey Ahmed
42595e4a65
multi-choice: Add prop for category name
...
This will be binded to both the accessibility label for each multi choice,
as opposed to defining it in GcalDateChooser popover.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/681 >
2026-01-29 02:21:43 +00: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
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
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
Hari Rana
d1a8e072b2
event-editor/multi-choice: Add file name to header
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603 >
2025-06-29 08:51:09 -04:00
Hari Rana
5ca18c7a34
event-editor/multi-choice: Document public methods
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603 >
2025-06-29 08:51:07 -04:00
Hari Rana
a6015bd357
event-editor/multi-choice: Properly space out code
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603 >
2025-06-29 08:50:58 -04:00
Hari Rana
640308652b
event-editor/multi-choice: Comment code sections
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/603 >
2025-06-29 08:50:41 -04:00
Felipe Kinoshita
2805b414f8
general: Use gtk_widget_set_visible
...
A lot of places were using gtk_widget_show/gtk_widget_hide, but those
methods are deprecated since Gtk 4.10.
Let's use gtk_widget_set_visible instead.
2023-03-03 19:14:09 -03:00
Adrien Plazas
b031c9591a
multi-choice: Add the popover property
...
This allows a multi choice's label to be clicked to reveal a popover. It
is needed by the date chooser, to have a combined month and year choice
that can be split in two via a popover.
This leaves the indendation purposefully broken to ease reviewing the
actual changes.
2022-06-16 08:23:45 -03:00
Georges Basile Stavracas Neto
4506fb7477
event-editor/multi-choice: Port to GTK4
2022-02-11 09:18:38 -03:00
Georges Basile Stavracas Neto
c73dc191db
project: Move GcalEditDialog and friends to src/gui/event-editor/
2020-10-30 15:13:35 -03:00