This refactor combines the functions
gcal_utils_launch_online_accounts_panel and
gcal_utils_launch_datetime_settings_panel into a single function that
takes a panel ID as an argument.
Shortcut is added so that time-related system settings can be easily
accessed. See #1023
The code is largely just a copy-paste of the code that opens the
"Online Accounts…" menu.
Fixes#1023
Move the add button from the headerbar into the dialog, make it
a pill button, and update the button label with the number of
calendars that will be added.
The interfacing that GcalCalendarManagementDialog had is somewhat
similar to AdwNavigationView, with pages and signaling basically
matching the same semantics.
We can save some code by switching to AdwNavigationView then, as
the heavy-lifting of page management is done there now.
The headerbar of the dialog is no more; instead, each page has its
own headerbar that automatically gets a back button.
Page activation and deactivation works essentially the same, but
uses AdwNavigationView signals to manage that.
GtkDialog is being deprecated. Instead of using it,
we want to subclass AdwWindow. As part of this change
the content and headerbar are put together in one box.
* Use the sidebar's search entry for search shortcut when folded
* Set context on the sidebar's search entry
* Drop context GtkExpression from gcal-toolbar-end.ui
Previously, the event title header text in the details popover was being ellipsized(truncated) instead of wrapping, making it difficult to read longer titles.
This commit updates the gcal-event-popover.ui file to set the "wrap" and "wrap-mode" properties to "true" and "word-char", respectively, for the summary label object.
This ensures that the event title header text is wrapped and more readable in the summary popover.
Fixes#1016.
This is still not the ideal solution, but now that we have widgetry
that can handle hundreds of thousands of events, no limitations to
the maximum number of events, and no crashes related on the search
engine, we can increase the search range to a broader value and
show more results.
Helps: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/624
When I originally wrote the code, I expected to create a new icon
every time that function was called. That expectation changed, but
the code wasn't fully updated.
Use g_value_set_object() instead of g_value_take_object().