Commit graph

9 commits

Author SHA1 Message Date
Thomas Wood
6f7d9d9364 shell: don't call gtk_widget_show_all on the new panel
Don't call gtk_widget_show_all when loading a panel as there may be widgets
that the panel does not want to be visible initially.
2010-06-04 16:34:52 +01:00
Thomas Wood
b8d094cad7 shell: load the X-GNOME-Settings-Panel ID into the data model
Load the panel id from the .desktop file into the model so that it does not
need to be loaded again later.
2010-06-04 16:34:52 +01:00
Thomas Wood
d36df5e3e4 shell: Use X-GNOME-Settings-Panel key value for the command line parameter
Read the X-GNOME-Settings-Panel key from the desktop file to start the
correct panel from the command line parameter.
2010-06-02 17:53:42 +01:00
Thomas Wood
d91e466f93 shell: Use the X-GNOME-Settings-Panel value to identify panels
Use the custom .desktop file field to identify panels and make sure the
panel implementations use the name to identify themselves.
2010-06-02 16:20:45 +01:00
Matthias Clasen
e14803b391 shell: Improve keyboard navigation
When using keynav in the category views, the fact that the categories are
separate icon views leads to confusion, because each category will end up
with its own selected icon, so that you can end up with multiple selected
items (and the difference between focused/non-focused is not visually
obvious here). Also, since the category views appear visually as a single
unit, it is irritating that arrow keynav stops at category borders.

This commit arranges things so that only one category will ever have a
selected item by unselecting on focus-out. Furthermore, it uses the
keynav-failed signal and some new GTK+ api to make arrow up/down work across
category borders, in the expected way.
2010-06-02 10:58:40 +01:00
Thomas Wood
27bf283683 shell: set the window name and icon when opening an embedded settings panel
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.
2010-05-25 14:38:36 +01:00
Thomas Wood
4fcc633a36 shell: remove unused title label and ensure padding around each panel
Make sure there is always 6 pixels padding around the embedded settings
panel.

Remove the unused title label and alignment.
2010-05-25 14:22:25 +01:00
Thomas Wood
a4073bdb8e shell: initialise the panel extension point
Set up the extension point and load plugins that are available. If a plugin
implements a particular panel, then load the CcPanel implementation instead
of executing the application.
2010-05-19 16:53:15 +01:00
Thomas Wood
4ea04c81dc shell: add a new settings shell
The new shell provides an implementation of CcShell and also removes the
dependency on libslab.
2010-05-19 11:11:26 +01:00