diff options
author | Vincent Untz <vuntz@gnome.org> | 2006-04-10 12:58:34 +0000 |
---|---|---|
committer | Vincent Untz <vuntz@src.gnome.org> | 2006-04-10 12:58:34 +0000 |
commit | 6d936311c93f4e7e39577afe6e72d1db3e9dceec (patch) | |
tree | 7155af4ce80d5f5386fde5adfe824f22d228d07f | |
parent | 14575a212b824c86f741bd9619a4be37b696e436 (diff) | |
download | gnome-desktop-6d936311c93f4e7e39577afe6e72d1db3e9dceec.tar.gz |
Backport from HEAD.
2006-04-10 Vincent Untz <vuntz@gnome.org>
Backport from HEAD.
* gnome-ditem-edit.c: (ensure_item_localefiled): new
(gnome_ditem_edit_sync_ditem): add a C name/comment/genericname if
there's none, copied from the locale value
Fix bug #107854
-rw-r--r-- | libgnome-desktop/ChangeLog | 9 | ||||
-rw-r--r-- | libgnome-desktop/gnome-ditem-edit.c | 21 |
2 files changed, 30 insertions, 0 deletions
diff --git a/libgnome-desktop/ChangeLog b/libgnome-desktop/ChangeLog index 9a440cf3..205132c4 100644 --- a/libgnome-desktop/ChangeLog +++ b/libgnome-desktop/ChangeLog @@ -2,6 +2,15 @@ Backport from HEAD. + * gnome-ditem-edit.c: (ensure_item_localefiled): new + (gnome_ditem_edit_sync_ditem): add a C name/comment/genericname if + there's none, copied from the locale value + Fix bug #107854 + +2006-04-10 Vincent Untz <vuntz@gnome.org> + + Backport from HEAD. + * gnome-desktop-item.c: (set_locale): if we add an attribute with a new locale, save the locale into our list of languages Fix bug #86169 diff --git a/libgnome-desktop/gnome-ditem-edit.c b/libgnome-desktop/gnome-ditem-edit.c index ed8c5de6..9431ac93 100644 --- a/libgnome-desktop/gnome-ditem-edit.c +++ b/libgnome-desktop/gnome-ditem-edit.c @@ -1050,6 +1050,19 @@ get_language (void) } static void +ensure_item_localefiled (GnomeDesktopItem *ditem, + const char *field) +{ + const char *localized; + + if (gnome_desktop_item_get_string (ditem, field) == NULL) { + localized = gnome_desktop_item_get_localestring (ditem, field); + if (localized != NULL) + gnome_desktop_item_set_string (ditem, field, localized); + } +} + +static void gnome_ditem_edit_sync_ditem (GnomeDItemEdit *dee) { GnomeDesktopItem *ditem; @@ -1177,6 +1190,14 @@ gnome_ditem_edit_sync_ditem (GnomeDItemEdit *dee) gnome_desktop_item_set_localestring ( ditem, GNOME_DESKTOP_ITEM_COMMENT, gtk_entry_get_text (GTK_ENTRY(dee->_priv->comment_entry))); + + /* Make sure we set the "C" locale strings to the terms we set here. + * This is so that if the user logs into another locale they get their + * own description there rather then empty. It is not the C locale + * however, but the user created this entry herself so it's OK */ + ensure_item_localefiled (ditem, GNOME_DESKTOP_ITEM_NAME); + ensure_item_localefiled (ditem, GNOME_DESKTOP_ITEM_GENERIC_NAME); + ensure_item_localefiled (ditem, GNOME_DESKTOP_ITEM_COMMENT); dee->_priv->ui_dirty = FALSE; } |