AdwNavigationView is a new widget meant to be used specifically
for navigation, unlike AdwLeaflet which was multipurpose.
AdwNavigationView provides a cleaner API and gives us automatic
titles, back buttons, gestures, actions, and windowcontrols.
AdwToolbarView is a utility widget that simplifies setting the
top and bottom bars for simple views, giving us styling with
undershoots, the ability to use flat headers in scrolling views,
and proper styling when used with the new sidebar widgets.
This commit ports the Accessibility panel to AdwNavigationView
and AdwToolbarView. Subpages now subclass AdwNavigationPage
and contain toolbar views - meaning their headers are joined with
their content. Their titles and their back buttons are automatically
handled by libadwaita, with proper accessibility.
The actions provided by AdwNavigationPage allow us to remove
the custom listbox we used for the `row-activated` signal. Rows
now use the `navigation.push` action in order to push a subpage
by tag.
Currently our AdwToolbarViews use the `raised` style, as we
have not ported to the new sidebar widget yet.
Error building template class 'CcSearchPanel' for an instance of type 'CcSearchPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcDisplayPanel' for an instance of type 'CcDisplayPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcMousePanel' for an instance of type 'CcMousePanel': .:0:0 Invalid object type 'CcIllustratedRow'
Error building template class 'CcKeyboardPanel' for an instance of type 'CcKeyboardPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcRegionPanel' for an instance of type 'CcRegionPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcUaPanel' for an instance of type 'CcUaPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcUserPanel' for an instance of type 'CcUserPanel': .:0:0 Invalid object type 'CcAvatarChooser'
Error building template class 'CcUserPanel' for an instance of type 'CcUserPanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcDateTimePanel' for an instance of type 'CcDateTimePanel': .:0:0 Invalid object type 'CcTzDialog'
cc_tz_dialog_get_selected_location: assertion 'CC_IS_TZ_DIALOG (self)' failed
dumped core
Error building template class 'CcDateTimePanel' for an instance of type 'CcDateTimePanel': .:0:0 Invalid object type 'CcListRow'
Error building template class 'CcInfoOverviewPanel' for an instance of type 'CcInfoOverviewPanel': .:0:0 Invalid object type 'CcHostnameEntry'
The custom listboxes serve another purpose: to handle
row activation. Instead of using a custom listbox, we
can simply listen to the `activated` signal on the
rows that don't have a switch.
We were using this to move between groups and scroll
the page, but that's not necessary. All we need
to do is set `scroll-to-focus` on our GtkViewport.
This commit removes the keynav-failed callback
and all associated plumbing.
This was quite a huge port, but fortunately it mostly involved
removing tons of deprecated widgets (without replacement; just
drop them) and adjusting packing properties.
This commit turns the ZoomOptions into a template class that
subclasses GtkDialog.
This is also a follow-up from commit c82deede1 where we started
using the non-deprecated GdkMonitor API.
The gnome-settings-daemon mouse settings (double-click delay) and repeat
keys settings were both missing destroying their GSettings, meaning that
we could crash if the setting changed outside the panel, or when coming
and going to the panel.
https://bugzilla.gnome.org/show_bug.cgi?id=793322
The dialogue offers the 5 separate cursor sizes that adwaita's cursor
theme supports, aligned in a row.
The cursor sizes are described in a way that doesn't judge their
respective sizes, but simply describes them.
https://bugzilla.gnome.org/show_bug.cgi?id=608231
There's very few chances that the universal-access will fit in the
minimum height of the shell for panels, so just nuke that.
This also fixes the panel taking 1px in height until we switch away from
it and back to it.
https://bugzilla.gnome.org/show_bug.cgi?id=761939