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
This field can be used to communicate the visibility of the
panel from a static context (i.e. without any instances of
a CcPanel nor any access to CcShell).
When selecting the panel on startup based on the "last-panel" settings,
we need to make sure that the panel exists.
Note that this is a special case which does not use the internal
set_active_panel_from_id API. Using it is currently not possible because
the API does not report back the error and we would end up not selecting
any panel.
Since we don't maintain two different shells anymore, there
is no need to maintain the two different sets of categories
in the desktop files.
This commit also drops the "#ifdef CC_ENABLE_ALT_CATEGORIES"
blocks, since the previous commit removed that define.
https://bugzilla.gnome.org/show_bug.cgi?id=790923
Some panels shall be shown only in current design, And some other panels
shall be shown only in new Shell design. So let's have a code that
would help us do that
https://bugzilla.gnome.org/show_bug.cgi?id=779216
Following the previous set of patches for implementing
the next generation Shell, a new set of categories must
be added.
These new categories will reflect on the ordering of the
panels and subpages in the sidelist.
This patch adds these new categories and conditionally
compiles them, to not break the current icon-based Shell.
https://bugzilla.gnome.org/show_bug.cgi?id=767301
Instead of just sorting by the name the sort order will now be:
1. Panels whose name match a search term
2. Panels whose keywords match the most search terms
3. Panels whose description match the most search terms
4. The remaining panels by name
https://bugzilla.gnome.org/show_bug.cgi?id=729027
Now that we don't allow or load external panels, using libgnome-menu is just
overengineering. We can get the same results with less code by keeping a static
list of function pointers.
This reduces the number of places one needs to patch to add a new panel.
Also, this way we avoid registering all types at startup, and if we want
we can switch to load panel desktop files in a separate thread.
https://bugzilla.gnome.org/show_bug.cgi?id=690165
This involves storing the default window title and icon name and resetting
the title and icon name when an embedded settings panel is closed.
The icon name and title for each panel is retrieved from the desktop file
information and stored in the CcShellModel.