Re: Re-inventing Metatheme
- From: Rodney Dawes <dobey free fr>
- To: Bill Haneman <bill haneman sun com>
- Cc: desktop-devel-list gnome org
- Subject: Re: Re-inventing Metatheme
- Date: 27 Aug 2002 10:15:42 -0400
On Tue, 2002-08-27 at 07:41, Bill Haneman wrote:
Hi:
Since the accessibility team has some requirements around Metatheme,
including a couple which we think argue strongly for the existance of a
metatheme mechanism as part of the core desktop, I thought I'd try to
summarize our perception of what a metathemer needs to do.
The ideas so far sound good - but of course we have some comments:
* we agree with Maciej that the question "what is my current metatheme"
is a reasonable one, so it makes sense to have a metatheme gconf key;
this requires some way of persisting the metatheme/gtk-font-icon-etc.
key relationships.
Right. That would of course be one of the additions. I only
created a proposal for the directory layout, not the entire
system. I wanted to get feedback on that first. Now that I
have some, I'll go through them, and make a couple mockups
for the UI and create a full proposal.
* desktop background belongs in the metatheme, though of course it
should continue to be customizable
Indeed. As should every other aspect of the metatheme.
* users like to customize settings; I submit that if Jungle is selected
and the background image is then changed in the background capplet, user
should see "Jungle (custom)" as the current theme.
Windows does this by adding a "Current Desktop Settings" item to
the list, if something has been modified. I think it may even be
a bit stupid about this, but I don't remember exactly, as I
haven't really used Windows in a few years.
* we should have a "create new metatheme from current settings" button;
this also implies a requirement for a corresponding "delete" button.
Right. Windows also implements this, by having a "Save As..." or
something similar, button. It saves the "Current Desktop Settings"
as a new "Desktop Theme" in the system-wide directory (iirc). This
of course, is not an option for us, unless we are root, or have
ample permissions to do so, so we would just write to ~/.themes/.
* since there will undoubtedly be some apps that don't follow the gtk+
theme, there is still need to accommodate additional gconf keys in our
metatheme back-end implementation. (using gtk+ themes and icon sets is
preferable but we need to build in extensibility and flexbility).
Right. Hence the addition of suggestions for alternate
applications which we don't directly control, so we could
create a standard for where to place theme information.
* the point of the metatheme is to group and simplify, thus the number
of UI elements should be kept to a minimum: we suggest
1) scrolling list of metathemes by name, with "custom" indication if
user has further modified gconf keys
2) 'create new' button that "snapshots" current keys and pops up
"Name for new theme" dialog
3) 'delete' button
4) a preview/snapshot of the theme, when available.
and possibly
5) "revert" button that reverts a "custom" metatheme to the metatheme
defaults
pressing the revert button (or toggling the checkbox) would be the
equivalent of re-selecting a theme which has been customized.
Alternatively the function of #5 and the 'custom' indication could be
combined into a single checkbox, if the resulting semantics were not too
confusing (i.e. the checkbox indicates whether the current theme is
customized, and un-checking it reverts the current theme).
Calum and I will try to post a mockup later today.
I'll also make a mockup very soon. We can compare and come up with
something final. I'm also considering making mockups of other
capplets that would affect similar parts of the metatheme
information. Windows contains most of the stuff in an "Appearance"
control panel. Sounds and Mouse Cursors are in other control
panels, appropriately.
With respect to issues of back-end gconf key organization, it matters
less to us as long as the effect is achievable; however we do think that
some extensibility is important for including gconf keys other than
those for existing gtk+ themes, fonts, background, etc. In other words,
a metatheme would be, in the most general form, a named collection of
gconf key-value pairs that affect various parts of the UI appearance and
behavior, which can be applied as a group via a simple dialog such as
the one we describe above.
best regards,
Bill
Indeed. There are several current GConf keys which I feel are in the
wrong place. A lot of them belong under /desktop/. Most all of the
theme keys should be under /desktop/. There are a few, very isolated
cases, where I could see the need for the keys under /apps/<app>,
though, those are mainly for Metacity/Sawfish, but if we are going to
be standardizing on Metacity, perhaps we should just move the theme
key and font key to /desktop/, and any other window manager would just
not work correctly with what we are doing, but would still have it's
own themability stuff. It wouldn't be hard to provide methods for
setting the themes for other window managers, however, it would be
pretty tedious and diverge from the goal a bit, though it would help
to maintain the extensibility.
Thank you for the feedback.
-- dobey
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]