diff options
author | Andrew Sobala <aes@gnome.org> | 2003-03-27 20:51:43 +0000 |
---|---|---|
committer | Andrew Sobala <aes@src.gnome.org> | 2003-03-27 20:51:43 +0000 |
commit | 44966951d18779e3769b577e0d86e125d3f2a7c1 (patch) | |
tree | 408818b3e8dd1722fbc4f8fd6dee121ea1fbb5a5 /capplets | |
parent | fca5c0b43bc464d300735e95c5329bcccb52e0af (diff) | |
download | gnome-control-center-44966951d18779e3769b577e0d86e125d3f2a7c1.tar.gz |
s/read_meta_theme/gnome_theme_read_meta_theme/; enable the reading of
2003-03-27 Andrew Sobala <aes@gnome.org>
* gnome-theme-info.c: (gnome_theme_read_meta_theme),
(update_common_theme_dir_index):
s/read_meta_theme/gnome_theme_read_meta_theme/; enable the reading of
themes that just use [X-GNOME-Metatheme] without pretending to be a
.desktop file
* gnome-theme-info.h: exposed gnome_theme_read_meta_theme
Diffstat (limited to 'capplets')
-rw-r--r-- | capplets/common/ChangeLog | 9 | ||||
-rw-r--r-- | capplets/common/gnome-theme-info.c | 33 | ||||
-rw-r--r-- | capplets/common/gnome-theme-info.h | 3 |
3 files changed, 32 insertions, 13 deletions
diff --git a/capplets/common/ChangeLog b/capplets/common/ChangeLog index 17b243bd2..4e37485b1 100644 --- a/capplets/common/ChangeLog +++ b/capplets/common/ChangeLog @@ -1,3 +1,12 @@ +2003-03-27 Andrew Sobala <aes@gnome.org> + + * gnome-theme-info.c: (gnome_theme_read_meta_theme), + (update_common_theme_dir_index): + s/read_meta_theme/gnome_theme_read_meta_theme/; enable the reading of + themes that just use [X-GNOME-Metatheme] without pretending to be a + .desktop file + * gnome-theme-info.h: exposed gnome_theme_read_meta_theme + Tue Feb 4 17:09:18 2003 Jonathan Blandford <jrb@redhat.com> * Release 2.2.0.1 diff --git a/capplets/common/gnome-theme-info.c b/capplets/common/gnome-theme-info.c index 0e3d518ad..aa57b85c0 100644 --- a/capplets/common/gnome-theme-info.c +++ b/capplets/common/gnome-theme-info.c @@ -7,6 +7,8 @@ #include <libgnome/gnome-desktop-item.h> #include "gnome-theme-info.h" +#define THEME_NAME "X-GNOME-Metatheme/Name" +#define THEME_COMMENT "X-GNOME-Metatheme/Comment" #define GTK_THEME_KEY "X-GNOME-Metatheme/GtkTheme" #define METACITY_THEME_KEY "X-GNOME-Metatheme/MetacityTheme" #define SAWFISH_THEME_KEY "X-GNOME-Metatheme/SawfishTheme" @@ -87,7 +89,7 @@ static void remove_data_from_hash_by_name (GHashTable static gpointer get_data_from_hash_by_name (GHashTable *hash_table, const gchar *name, gint priority); -static GnomeThemeMetaInfo *read_meta_theme (GnomeVFSURI *meta_theme_uri); + static GnomeThemeIconInfo *read_icon_theme (GnomeVFSURI *icon_theme_uri); static void handle_change_signal (GnomeThemeType type, gpointer theme, @@ -294,8 +296,8 @@ get_data_from_hash_by_name (GHashTable *hash_table, return NULL; } -static GnomeThemeMetaInfo * -read_meta_theme (GnomeVFSURI *meta_theme_uri) +GnomeThemeMetaInfo * +gnome_theme_read_meta_theme (GnomeVFSURI *meta_theme_uri) { GnomeThemeMetaInfo *meta_theme_info; GnomeVFSURI *common_theme_dir_uri; @@ -316,16 +318,23 @@ read_meta_theme (GnomeVFSURI *meta_theme_uri) meta_theme_info->path = meta_theme_file; meta_theme_info->name = gnome_vfs_uri_extract_short_name (common_theme_dir_uri); gnome_vfs_uri_unref (common_theme_dir_uri); - - str = gnome_desktop_item_get_localestring (meta_theme_ditem, GNOME_DESKTOP_ITEM_NAME); - if (str == NULL) - { - gnome_theme_meta_info_free (meta_theme_info); - return NULL; - } + str = gnome_desktop_item_get_localestring (meta_theme_ditem, THEME_NAME); + + if (!str) + { + str = gnome_desktop_item_get_localestring (meta_theme_ditem, GNOME_DESKTOP_ITEM_NAME); + if (!str) /* shouldn't reach */ + { + gnome_theme_meta_info_free (meta_theme_info); + return NULL; + } + } + meta_theme_info->readable_name = g_strdup (str); - str = gnome_desktop_item_get_localestring (meta_theme_ditem, GNOME_DESKTOP_ITEM_COMMENT); + str = gnome_desktop_item_get_localestring (meta_theme_ditem, THEME_COMMENT); + if (str == NULL) + str = gnome_desktop_item_get_localestring (meta_theme_ditem, GNOME_DESKTOP_ITEM_COMMENT); if (str != NULL) meta_theme_info->comment = g_strdup (str); @@ -641,7 +650,7 @@ update_common_theme_dir_index (GnomeVFSURI *theme_index_uri, } else { - theme_info = read_meta_theme (theme_index_uri); + theme_info = gnome_theme_read_meta_theme (theme_index_uri); if (theme_info) { ((GnomeThemeMetaInfo *) theme_info)->priority = priority; diff --git a/capplets/common/gnome-theme-info.h b/capplets/common/gnome-theme-info.h index d0228e36b..c9e20ecf6 100644 --- a/capplets/common/gnome-theme-info.h +++ b/capplets/common/gnome-theme-info.h @@ -27,6 +27,7 @@ #define GNOME_THEME_INFO_H #include <glib.h> +#include <libgnomevfs/gnome-vfs.h> typedef enum { @@ -117,7 +118,7 @@ GnomeThemeMetaInfo *gnome_theme_meta_info_find_by_uri (const char * GList *gnome_theme_meta_info_find_all (void); gint gnome_theme_meta_info_compare (GnomeThemeMetaInfo *a, GnomeThemeMetaInfo *b); - +GnomeThemeMetaInfo *gnome_theme_read_meta_theme (GnomeVFSURI *meta_theme_uri); /* Other */ void gnome_theme_init (gboolean *monitor_not_added); |