Re: [evolution-patches] Re: [Evolution-hackers] evolution 1.2 branch and UTF-8 strings - PATCH
- From: Not Zed <notzed ximian com>
- To: Jeffrey Stedfast <fejj ximian com>
- Cc: Frederic Crozat <fcrozat mandrakesoft com>, evolution-hackers lists ximian com, evolution-patches ximian com
- Subject: Re: [evolution-patches] Re: [Evolution-hackers] evolution 1.2 branch and UTF-8 strings - PATCH
- Date: 10 Mar 2003 11:40:07 +1030
looks good to commit
On Fri, 2003-03-07 at 03:06, Jeffrey Stedfast wrote:
> Aha, found the problem... it seems that the gui code expected the prompt
> in UTF-8 even though camel always sends the prompt in the locale
> charset.
>
> Simple fix attached.
>
> Jeff
>
> On Thu, 2003-03-06 at 11:12, Frederic Crozat wrote:
> > Le jeu 06/03/2003 à 16:56, Jeffrey Stedfast a écrit :
> > > On Thu, 2003-03-06 at 08:32, Frederic Crozat wrote:
> > > > Hi all,
> > > >
> > > > while debugging the GPG signed message problem, I found another problem
> > > > in camel : currently, it uses _() to translate its message and those
> > > > strings are then used by mail-session.c to display modal dialog..
> > > > Problem is _() will not always output an UTF-8 string, unless
> > > > bind_textdomain_codeset is used (currently not the case in Evo 1.2.2)
> > >
> > > hmmm, Evolution 1.2.x doesn't use UTF-8 for dialog label display, it
> > > just uses the user's locale charset so _() macro's should be fine.
> > >
> > > the only place evo uses UTF-8 is in the custom widgets (which the passwd
> > > dialog doesn't use).
> > >
> > > basically, all messages from camel (errors/prompts) are supposed to be
> > > in the locale charset.
> >
> > Ok.. I think it should be added in the camel documentation :))
> >
> > > >
> > > > I'm seeing this problem in camel/camel-gpg-context.c:742 when it asks
> > > > passphrase, which in French is translated using latin1 characters,
> > > > causing the dialog to be "scrambled"..
> > >
> > > I think someone else reported something similar...(there's a bug in
> > > bugzilla about it) perhaps it is only a problem when the locale is UTF-8
> > > but the po files are in Latin1?
> >
> > Well, I don't think this is the problem here :
> > french .po is latin1
> > locale used (french) is latin1 too..
> >
> > But gal widgets are supposed to be using UTF-8 strings, IIRC, so a
> > conversion is missing somewhere..
> --
> Jeffrey Stedfast
> Evolution Hacker - Ximian, Inc.
> fejj ximian com - www.ximian.com
>
> ______________________________________________________________________
>
> Index: ChangeLog
> ===================================================================
> RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
> retrieving revision 1.2444.2.17
> diff -u -r1.2444.2.17 ChangeLog
> --- ChangeLog 5 Mar 2003 18:50:39 -0000 1.2444.2.17
> +++ ChangeLog 6 Mar 2003 16:33:56 -0000
> @@ -1,3 +1,10 @@
> +2003-03-06 Jeffrey Stedfast <fejj ximian com>
> +
> + * mail-session.c (request_password): Don't use
> + e_utf8_to_gtk_string here, as the strings passed to us from camel
> + are already in the proper encoding (ie, the locale
> + encoding). Fixes bug #36453.
> +
> 2003-03-04 Jeffrey Stedfast <fejj ximian com>
>
> * mail-callbacks.c (composer_get_message): Revert my prior change
> Index: mail-session.c
> ===================================================================
> RCS file: /cvs/gnome/evolution/mail/mail-session.c,v
> retrieving revision 1.40
> diff -u -r1.40 mail-session.c
> --- mail-session.c 16 Oct 2002 04:07:31 -0000 1.40
> +++ mail-session.c 6 Mar 2003 16:33:56 -0000
> @@ -248,7 +248,6 @@
> GtkWidget *check, *check_label, *entry;
> GList *children, *iter;
> gboolean show;
> - char *title;
> unsigned int accel_key;
>
> /* If we already have a password_dialogue up, save this request till later */
> @@ -261,8 +260,7 @@
>
> /* assume we can use any widget to translate string for display */
> check_label = gtk_label_new ("");
> - title = e_utf8_to_gtk_string (GTK_WIDGET (check_label), m->prompt);
> - password_dialogue = (GnomeDialog *)dialogue = gnome_request_dialog (m->secret, title, NULL, 0, pass_got, m, NULL);
> + password_dialogue = (GnomeDialog *)dialogue = gnome_request_dialog (m->secret, m->title, NULL, 0, pass_got, m, NULL);
> g_free(title);
> password_destroy_id = gtk_signal_connect((GtkObject *)dialogue, "destroy", request_password_deleted, m);
>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]