To allow a much easier porting to the new layout, the keyboard
panel is now a template class. That has various implications on
the code organization:
- The keyboard-shortcuts.c was responsible for filling the shortcuts.
Because it relied on the GtkBuilder of the panel, most of its code
was moved to the CcKeyboardPanel class.
- The unused code from the keyboard panel class had to be removed in
order to make it work again.
- All the hash tables and widgets are now part of the CcKeyboardPanel
structure.
- The interface elements have a single entry point.
https://bugzilla.gnome.org/show_bug.cgi?id=769063
Commit eb9c110 removed add-remove-toolbar, however, some leftovers are
in the code which causes the following errors:
Gtk-CRITICAL **: gtk_widget_get_style_context: assertion 'GTK_IS_WIDGET (widget)' failed
Gtk-CRITICAL **: gtk_style_context_set_junction_sides: assertion 'GTK_IS_STYLE_CONTEXT (context)' failed
https://bugzilla.gnome.org/show_bug.cgi?id=767065
When a touchpad supports it. When the option is set, it will
automatically disable two-finger scrolling.
The scrolling method used by each individual touchpad is implemented in
mutter, not here.
https://bugzilla.gnome.org/show_bug.cgi?id=761461
gettext can extract strings from xml file formats with the help of
.its files. Provide appropriate rules so modules that install
keybinding descriptions don't need to depend on intltool to
extract translatable strings.
https://bugzilla.gnome.org/show_bug.cgi?id=769066
This also introduces a change to the Lock/Unlock logic. From now
on, Unlocking the panel causes the "Lock" button to turn into the
"Add User" button.
https://bugzilla.gnome.org/show_bug.cgi?id=767065
The headerbar buttons with arrows were moved sidebyside by the commit
a70888f. The buttons have a slightly different size, which looks pretty
weird currently. Fix this by setting valign on GtkButton and not on
GtkImage inside.
https://bugzilla.gnome.org/show_bug.cgi?id=767065
These classes are deprecated by Gtk+ and should be replaced
by vertical and/or horizontal GtkBoxes.
This commit replaces the usage of the deprecated box classes.
https://bugzilla.gnome.org/show_bug.cgi?id=769063
After introducing the autocleanup function to
CcPanel, it is now possible to remove a lot of
boilerplate code from the panels.
This commit ports CcKeyboardPanel to be a final
type, removing all the old boilerplate code in
the proccess.
https://bugzilla.gnome.org/show_bug.cgi?id=769063
CcPanel uses the old boilerplate code from GLib,
which does not set an autocleanup function.
The lack of a cleanup function implies that panels
cannot use G_DECLARE_{FINAL,DERIVABLE}_TYPE, making
the code stick to the old boilerplate.
This patch adds a cleanup function to CcPanel. It doesn't
move CcPanel to G_DECLARE_DERIVABLE_TYPE() because it'd
break the CcPanel's subclasses.
https://bugzilla.gnome.org/show_bug.cgi?id=769063
When the active panel is not changed through sidebar navigation,
e.g. by calling the Control Center through command line and asking
to open a specific panel, the panel is correctly opened but the
sidebar is not updated to reflect that.
Fix that by selecting the externally set panel row, and eventually
moving to the correct list.
https://bugzilla.gnome.org/show_bug.cgi?id=769063
Currently if control-center is already running with privacy panel in
foreground and user authorizes a new application to gain access to
location information from gnome-shell dialog, this change doesn't get
reflected in the privacy panel to user until they exit privacy panel.
This change fixes this by reacting to changes to permissions store.
https://bugzilla.gnome.org/show_bug.cgi?id=765006
Since we are setting the "Account Activity" title by prepending
the user real name ("%s - Account Activity") in um-history-dialog.c,
there's no need to set the title property for the dialog elsewhere.
https://bugzilla.gnome.org/show_bug.cgi?id=767065
This code will be reused in the future to retrieve information
stored in /etc/os-release file and, as preparation for the next
patch that retrieves and displays the build-id of the OS.
https://bugzilla.gnome.org/show_bug.cgi?id=768693
The Mouse & Touchpad panel has a horizontally centered
list, which is centered pixel-counting the list width and
hardcoded margins.
This approach has various issues. It resizes the window
needlessly when e.g. the font changes the size, dpi or
family. This is specially visible when dealing with low
resolution screens, where the hardcoded margins are too
much to fit a 720x480 screen with the Large Font accessibility
setting on.
Fix that by removing the margins and setting the horizontal
alignment of the list to center. Since the list itself doesn't
expand to fill the available space, there won't be any user-
visible changes except that the panel is now able to scale
down.
https://bugzilla.gnome.org/show_bug.cgi?id=768529
Instead of using only hardcoded height requests, it's better
if we give more flexibility for the content to grow up to
a certain amount of pixels.
Also, this patch slightly reduces the maximum size by 20px, so
that in the tested scenario (Adwaita with Large Font settings on)
the panel is still able to size down.
https://bugzilla.gnome.org/show_bug.cgi?id=768529