Hi; I think we should use the opportunity of converting to gsettings to redesign the desktop schemas, not just do a 1:1 translation from gconf.
Let me make some remarks about the gsettings desktop schemas as they right now are in gsettings-desktop-schemas module. -------------------------------------------- org.gnome.desktop.background.gschema.xml.in: <key name="picture-options" enum="org.gnome.desktop.GDesktopBackgroundStyle"> <default>'zoom'</default> <summary>Picture Options</summary> <description>Determines how the image set by wallpaper_filename is rendered. Possible values are "none", "wallpaper", "centered", "scaled", "stretched", "zoom", "spanned".</description> </key> I don't think we need to enumerate all choices in the <description> here. With gsettings, the valid values are stored in the schema via the enum, so this is unnecessary work for translators, and superflous. Coincidentally, taking a look at all the <summary> and <description> strings, it seems to me that once these value enumerations are taken out, not too much remains that justifies the split between two strings. IMHO we should consider dropping <summary> from gschema and only provide for the one <description> strings. <key name="picture-filename" type="s"> <default>'@datadir@/pixmaps/backgrounds/gnome/background-default.jpg'</default> <summary>Picture Filename</summary> <description>File to use for the background image.</description> </key> This is a common error. Filenames need to be stored as "ay" and *NOT* "s" (since "s" is UTF-8). (I think this needs some enhancement in glib-compile-schemas to be able to still put a string in <default>.) <key name="picture-opacity" type="i"> <range min="0" max="100"/> <default>100</default> <summary>Picture Opacity</summary> <description>Opacity with which to draw the background picture.</description> </key> IMHO, should be a "d" with <range min=0.0 max=1.0> instead. Also, I wonder if all the picture-* keys should be inside a child schema here. --------------------------------------------------- org.gnome.desktop.default-applications.gschema.xml: Looks like this should use a settings list, with a base schema containing "exec", "needs-term" (should be "needs-terminal" as below) keys, and an extended schema for the browser settings adding the "nremote" key. <key name="exec" type="s"> <default>'mozilla'</default> <summary>Default browser</summary> <description>Default browser for all URLs.</description> </key> I wonder if we should support "as" as argv here, instead. Also, whether this should be "ay" (or "aay") since technically, programme names need not be UTF-8. --------------------------------------- org.gnome.desktop.interface.gschema.xml: Looks ok, but maybe the keys could be named more consistently. --------------------------------------- org.gnome.desktop.lockdown.gschema.xml: I wonder if this schema should simply contain a flag setting, instead of several boolean lockdown settings? ------------------------------------------ org.gnome.desktop.url-handlers.gschema.xml: This should be a settings list, with a base schema for the "enabled", "exec" and "needs-terminal" keys; actually the same base schema as the default-applications schemas above. ----------------------------------- org.gnome.system.proxy.gschema.xml: Should use a settings list for the various (http/https/ftp/socks) proxies. Maybe the developers working on GIO proxy support could look at this schema and see if it maps nicely to what their code supports ? <key name="host" type="s"> <default>''</default> <summary>HTTP proxy host name</summary> <description>The machine name to proxy HTTP through.</description> </key> <key name="port" type="i"> <range min="0" max="65535"/> <default>8080</default> <summary>HTTP proxy port</summary> <description>The port on the machine defined by "/system/proxy/http/host" that you proxy through.</description> </key> IMHO this is _one_ setting that belongs together, as a "(sq)" tuple (string, uint16). ----------------------------------------------------- Finally, I'd like to suggest that gsettings-desktop-schemas install a header file containing #define's for each schema ID, schema, path and all the key names. Regards, Christian _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list