Commit Graph
10 Commits
Author SHA1 Message Date
Amey 933dc567e7 sidebar: add calendar popover natural width 2025-01-25 04:04:38 +05:30
Amey d3b5c26722 sidebar: fix calendar name overflow 2025-01-16 12:08:26 +00:00
Enzo MAROS dee98d1e20 calendar-button: Bind calendar color with paintable
When updating the color of the calendar, the corresponding colored dot
in the "Calendars" popover does not change. This is due to the fact that
GListModel doesn't notify when one child changes internally. Any widget
depicting a calendar should watch for changes on the data.

To fix this, I used the same code as in GcalEventEditorDialog, which
creates a binding between the calendar's color and the paintable inside
the image.
2024-08-06 13:18:20 +00:00
Enzo MAROS 972b88a97d calendar-button: Remove useless listbox sort
Since the GtkListBox is bound to the calendars GListModel, and since the
GListModel is already sorted, there is no longer a need for sorting the
rows by name.
2024-08-06 13:18:20 +00:00
Enzo MAROS 9ea843807d calendar-button: Implementing new update method for children
When enabling or disabling a calendar through the GcalCalendarButton
popover, the user loses the ability to click right after. This bug was
caused by the update mechanism, triggered by the calendar-changed signal,
which would delete then create a brand new GtkWidget for the row.

To fix this, I replaced the manual signal-based create, update and
remove mechanisms with a binding between the GtkListBox and the calendar
GListModel.
2024-08-05 15:43:49 +00:00
Georges Basile Stavracas Neto bd042ba4e8 calendar-button: Workaround listbox style
Use the 'modelbutton' CSS name to mimic the style of model buttons.

Closes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/849
2023-05-23 19:14:42 -03:00
Georges Basile Stavracas Neto 3c672e0784 Move sync indicator into a separate widget
And move the new widget into the headerbar itself, instead of
the calendars button.
2023-05-23 19:01:19 -03:00
Georges Basile Stavracas Neto b93aa0dd23 calendar-button: Stop spinning when not synchronizing
GtkSpinner queues relayouts even when the stack is not displaying
it, and this causes excessive redrawing. This button design looks
obsolete and should eventually be reworked, but for now, let's
just stop spinning when the spinner is invisible.

Closes https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/971
2023-03-16 12:25:15 +00:00
Adrien Plazas aecfebcc9d Use gtk_widget_add/remove_css_class() where possible
This makes the code simpler and more idiomatic to GTK 4.
2022-05-10 13:01:25 +02:00
Georges Basile Stavracas Neto ad0a97d6ac Rework calendar popover to be a button
This allows more precise control of the style and the contents
of the popover.
2022-02-12 13:08:50 -03:00