As per the latest mockups, the Details section is a toplevel
section, and not an actual subsection.
Remove all the code that implemented Details as a subsection,
and simply treat these panels as toplevel ones.
The panel swarms details/devices/privacy show this icon. Since the applications
panel is not made from sub-panels, this doesn't show. For consistency this shows
the icon so the transition isn't as jarring for the user.
Add a flat into the panel .desktop file to enable this - other panels might
require this in the future
Right now, the sort function checks for two different
fields when comparing panel rows: the category of the
row, and the id of the panel. When comparing using the
category, it relies on the order of the enum values of
CcPanelCategory. When comparing by panel ids, it uses
the hardcoded positions defined in the 'panel_order'
array.
Using categories, however, is unecessary for our case,
and makes sorting a tad more complicated than it should
be.
Remove the category comparison of the sort function, and
rely only on the positions defined in 'panel_order'.
Instead of using @borders for drag handles, we use @theme_fg_color at 40% opacity. Because these are widgets intended to be interacted with by users instead of drawing borders, we should use a semantically appropriate color which updates according to whether a user has a dark theme selected or not. This ensures that the drag handles contrast with the background no matter what stylesheet the user is using.
This improves the contrast of these widgets in the light theme from 1.7:1 to 2.9:1, which is still rather low, but greatly improves the usability of these widgets without having too large an impact on the look of the widgets in-situ. The contrast ratio is unchanged in the HighContrast style (4.0:1).
This also improves the situation if we eventually adopt a dark style preference for users, and improves the portability of the application.
When the panel list is folded, either the panel items list or the
panel itself is shown, not both. And when the list is shown it
doesn’t mean anything for an item to be marked as selected.
Sometimes ninja decides to compile tests/interactive-panels/main.c,
which requires shell/resources.h, before shell/resources.h is generated.
The fix is to use 'sources' argument of declare_dependency to properly
declare the dependency on generated headers.
A fix for tests/datetime and panels/datetime is also included in the
commit to fix a similar problem.
Closes https://gitlab.gnome.org/GNOME/gnome-control-center/merge_requests/472
There's a dedicated icon for drag handles - we should make use of
it. Also, change the color of the handle so it looks like it is
part of the row.
Fixes#590
This allows the window to be folded to show either the sidebar or the
panel when not enough space is available.
This reverts commit 2854669f5c8280a32d0b5fa6c5399cc391ef06f3.
This will help ensuring the shell's leaflets fold consistently for all
panels by setting a more reasonable minimum size constraint for the
right panel, so that more panels can meet it.
Currently you can get stuck in the applications panel if you do this:
1) Click "Applications" in the sidebar. The top left icon is a back
icon.
2) Click the back icon to return to the panel list. The top left icon
changes to a search icon.
3) Click "Applications" again. The top left icon remains a search icon
and you're stuck in the panel.
The basic problem is that the headebar icon is update when the panel
changes, but not when the sidebar view changes. To fix this, we connect
to the signal that is emitted when the sidebar view changes, and update
the headerbar.
Use the new designs:
https://wiki.gnome.org/Design/SystemSettings/Sound
The existing panel was very old and had a very traditional layout that didn't
align with the new designs. Initialy this patch modified existing elements of
the old panel but the change was so great that new widgets were written. Some
of the widgets have algorithms taken from the old panel.
The sound files and icons are from the old panel.
Ensure all panels take at least 300pt of width to ensure a minimum of
usability, readability of the panels and consistency of when the shell
folds itself.
This is necessary for the application panel to warn that an element of
its sidebar has been activated so the window can focus on it when the
window will use a leaflet.
Our public name is Settings not Control Center.
In the description, simplify and use "system" instead of "desktop".
"GNOME desktop" is still mentioned in the summary but that seems
ok to me.