diff options
author | Christian Persch <chpe@src.gnome.org> | 2009-04-08 21:28:07 +0000 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2009-04-08 21:28:07 +0000 |
commit | 98a77d35bedf5beff0f0dfef29674430f74c0102 (patch) | |
tree | 0915def203adcd2f3fb548e4d3592af99bdaba82 /lib | |
parent | 7f0ac8bada128d5b6c51952613d2786a951f1e75 (diff) | |
download | epiphany-98a77d35bedf5beff0f0dfef29674430f74c0102.tar.gz |
Update smclient from libegg master
svn path=/trunk/; revision=8952
Diffstat (limited to 'lib')
-rw-r--r-- | lib/egg/eggdesktopfile.c | 15 | ||||
-rw-r--r-- | lib/egg/eggsmclient-xsmp.c | 13 |
2 files changed, 25 insertions, 3 deletions
diff --git a/lib/egg/eggdesktopfile.c b/lib/egg/eggdesktopfile.c index ce0c6f338..c18599881 100644 --- a/lib/egg/eggdesktopfile.c +++ b/lib/egg/eggdesktopfile.c @@ -1440,6 +1440,21 @@ egg_set_desktop_file (const char *desktop_file_path) g_error_free (error); } +#if 0 + if (egg_desktop_file) { + /* Set localized application name and default window icon */ + if (egg_desktop_file->name) + g_set_application_name (egg_desktop_file->name); + if (egg_desktop_file->icon) + { + if (g_path_is_absolute (egg_desktop_file->icon)) + gtk_window_set_default_icon_from_file (egg_desktop_file->icon, NULL); + else + gtk_window_set_default_icon_name (egg_desktop_file->icon); + } + } +#endif + G_UNLOCK (egg_desktop_file); } diff --git a/lib/egg/eggsmclient-xsmp.c b/lib/egg/eggsmclient-xsmp.c index dcaf36b98..81af7d2b6 100644 --- a/lib/egg/eggsmclient-xsmp.c +++ b/lib/egg/eggsmclient-xsmp.c @@ -830,10 +830,14 @@ save_state (EggSMClientXSMP *xsmp) if (desktop_file) { GKeyFile *merged_file; + char *desktop_file_path; merged_file = g_key_file_new (); - if (g_key_file_load_from_file (merged_file, - egg_desktop_file_get_source (desktop_file), + desktop_file_path = + g_filename_from_uri (egg_desktop_file_get_source (desktop_file), + NULL, NULL); + if (desktop_file_path && + g_key_file_load_from_file (merged_file, desktop_file_path, G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, NULL)) { @@ -876,8 +880,11 @@ save_state (EggSMClientXSMP *xsmp) EGG_DESKTOP_FILE_KEY_EXEC, exec); g_free (exec); - } + else + desktop_file = NULL; + + g_free (desktop_file_path); } /* Now write state_file to disk. (We can't use mktemp(), because |