1 diff -urN gaim-0.45.org/src/gtkimhtml.c gaim-0.45/src/gtkimhtml.c
2 --- gaim-0.45.org/src/gtkimhtml.c Sun Oct 14 19:46:14 2001
3 +++ gaim-0.45/src/gtkimhtml.c Tue Oct 16 21:34:56 2001
11 #include "gtkimhtml.h"
18 +#ifdef HAVE_LANGINFO_CODESET
19 +#include <langinfo.h>
23 #include "pixmaps/angel.xpm"
24 #include "pixmaps/bigsmile.xpm"
29 +static gchar* getcharset()
31 + static gchar charset[64];
32 +#ifdef HAVE_LANGINFO_CODESET
33 + gchar *ch = nl_langinfo(CODESET);
34 + if (strncasecmp(ch, "iso-", 4) == 0)
35 + g_snprintf(charset, sizeof(charset), "iso%s", ch + 4);
37 + g_snprintf(charset, sizeof(charset), ch);
39 + g_snprintf(charset, sizeof(charset), "iso8859-*");
45 gtk_smiley_tree_new ()
47 @@ -1781,53 +1803,60 @@
48 return gdk_fontset_load ("-*-*-*-*-*-*-*-*-*-*-*-*-*-*,*");
51 - g_snprintf (buf, sizeof (buf), "-*-%s-%s-%c-*-*-*-%d-*-*-*-*-iso8859-*",
52 + g_snprintf (buf, sizeof (buf), "-*-%s-%s-%c-*-*-*-%d-*-*-*-*-%s",
54 bold ? "bold" : "medium",
59 font = gdk_font_load (buf);
61 if (!font && italics) {
62 - g_snprintf (buf, sizeof (buf), "-*-%s-%s-o-*-*-*-%d-*-*-*-*-iso8859-*",
63 + g_snprintf (buf, sizeof (buf), "-*-%s-%s-o-*-*-*-%d-*-*-*-*-%s",
65 bold ? "bold" : "medium",
69 font = gdk_font_load (buf);
73 - g_snprintf (buf, sizeof (buf), "-*-%s-%s-%c-*-*-*-*-*-*-*-*-iso8859-*",
74 + g_snprintf (buf, sizeof (buf), "-*-%s-%s-%c-*-*-*-*-*-*-*-*-%s",
76 bold ? "bold" : "medium",
77 - italics ? 'i' : 'r');
78 + italics ? 'i' : 'r',
80 font = gdk_font_load (buf);
83 if (!font && italics) {
84 - g_snprintf (buf, sizeof (buf), "-*-%s-%s-o-*-*-*-*-*-*-*-*-iso8859-*",
85 + g_snprintf (buf, sizeof (buf), "-*-%s-%s-o-*-*-*-*-*-*-*-*-%s",
87 - bold ? "bold" : "medium");
88 + bold ? "bold" : "medium",
90 font = gdk_font_load (buf);
94 - g_snprintf (buf, sizeof (buf), "-*-%s-*-%c-*-*-*-*-*-*-*-*-iso8859-*",
95 + g_snprintf (buf, sizeof (buf), "-*-%s-*-%c-*-*-*-*-*-*-*-*-%s",
97 - italics ? 'i' : 'r');
98 + italics ? 'i' : 'r',
100 font = gdk_font_load (buf);
104 - g_snprintf (buf, sizeof (buf), "-*-%s-*-%c-*-*-*-*-*-*-*-*-iso8859-*",
105 + g_snprintf (buf, sizeof (buf), "-*-%s-*-%c-*-*-*-*-*-*-*-*-%s",
107 - italics ? 'o' : '*');
108 + italics ? 'o' : '*',
110 font = gdk_font_load (buf);
113 if (!font && italics) {
114 - g_snprintf (buf, sizeof (buf), "-*-%s-*-*-*-*-*-*-*-*-*-*-iso8859-*",
116 + g_snprintf (buf, sizeof (buf), "-*-%s-*-*-*-*-*-*-*-*-*-*-%s",
119 font = gdk_font_load (buf);
122 @@ -2032,6 +2061,11 @@
123 g_return_if_fail (imhtml != NULL);
124 g_return_if_fail (GTK_IS_IMHTML (imhtml));
126 +#ifdef HAVE_LANGINFO_CODESET
128 + font = gtk_imhtml_font_load (imhtml, "Helvetica", FALSE, FALSE, 0);
132 if (imhtml->default_font)
133 gdk_font_unref (imhtml->default_font);