no-xwc.patch 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. remove mb and XWC support, as tinyx doesnt support this
  2. #
  3. # Patch managed by http://www.holgerschurig.de/patcher.html
  4. #
  5. --- gtk+-1.2.10/gdk/gdkdraw.c~no-xwc
  6. +++ gtk+-1.2.10/gdk/gdkdraw.c
  7. @@ -236,12 +236,14 @@
  8. strlen (string) / 2);
  9. }
  10. }
  11. +#ifdef HAVE_XWC
  12. else if (font->type == GDK_FONT_FONTSET)
  13. {
  14. XFontSet fontset = (XFontSet) font_private->xfont;
  15. XmbDrawString (drawable_private->xdisplay, drawable_private->xwindow,
  16. fontset, gc_private->xgc, x, y, string, strlen (string));
  17. }
  18. +#endif
  19. else
  20. g_error("undefined font type\n");
  21. }
  22. @@ -291,12 +293,14 @@
  23. gc_private->xgc, x, y, (XChar2b *) text, text_length / 2);
  24. }
  25. }
  26. +#ifdef HAVE_XWC
  27. else if (font->type == GDK_FONT_FONTSET)
  28. {
  29. XFontSet fontset = (XFontSet) font_private->xfont;
  30. XmbDrawString (drawable_private->xdisplay, drawable_private->xwindow,
  31. fontset, gc_private->xgc, x, y, text, text_length);
  32. }
  33. +#endif
  34. else
  35. g_error("undefined font type\n");
  36. }
  37. @@ -337,6 +341,7 @@
  38. g_free (glyphs);
  39. }
  40. }
  41. +#ifdef HAVE_XWC
  42. else if (font->type == GDK_FONT_FONTSET)
  43. {
  44. if (sizeof(GdkWChar) == sizeof(wchar_t))
  45. @@ -357,6 +362,7 @@
  46. g_free (text_wchar);
  47. }
  48. }
  49. +#endif
  50. else
  51. g_error("undefined font type\n");
  52. }
  53. --- gtk+-1.2.10/gdk/gdkim.c~no-xwc
  54. +++ gtk+-1.2.10/gdk/gdkim.c
  55. @@ -121,6 +121,7 @@
  56. current_locale = setlocale (LC_ALL, NULL);
  57. +#ifdef HAVE_XWC
  58. if ((strcmp (current_locale, "C")) && (strcmp (current_locale, "POSIX")))
  59. {
  60. gdk_use_mb = TRUE;
  61. @@ -145,7 +146,8 @@
  62. GDK_NOTE (XIM,
  63. g_message ("%s multi-byte string functions.",
  64. gdk_use_mb ? "Using" : "Not using"));
  65. -
  66. +#endif
  67. +
  68. return current_locale;
  69. }
  70. @@ -1551,6 +1553,7 @@
  71. else
  72. length = len;
  73. +#ifdef HAVE_XWC
  74. if (gdk_use_mb)
  75. {
  76. XTextProperty tpr;
  77. @@ -1589,6 +1592,7 @@
  78. g_free (src_wc);
  79. }
  80. else
  81. +#endif
  82. {
  83. gint i;
  84. @@ -1644,6 +1648,7 @@
  85. /* NoMem or LocaleNotSupp */
  86. return -1;
  87. }
  88. +#ifdef HAVE_XWC
  89. if (XwcTextPropertyToTextList (gdk_display, &tpr, &wstrs, &num_wstrs)
  90. != Success)
  91. {
  92. @@ -1659,6 +1664,7 @@
  93. dest[len_cpy] = wstr_src[len_cpy];
  94. XwcFreeStringList (wstrs);
  95. return len_cpy;
  96. +#endif
  97. }
  98. else
  99. {
  100. --- gtk+-1.2.10/gdk/gdkfont.c~no-xwc
  101. +++ gtk+-1.2.10/gdk/gdkfont.c
  102. @@ -244,9 +244,11 @@
  103. gdk_xid_table_remove (((XFontStruct *) private->xfont)->fid);
  104. XFreeFont (private->xdisplay, (XFontStruct *) private->xfont);
  105. break;
  106. +#ifdef HAVE_XWC
  107. case GDK_FONT_FONTSET:
  108. XFreeFontSet (private->xdisplay, (XFontSet) private->xfont);
  109. break;
  110. +#endif
  111. default:
  112. g_error ("unknown font type.");
  113. break;
  114. @@ -292,6 +294,7 @@
  115. return (((XFontStruct *) privatea->xfont)->fid ==
  116. ((XFontStruct *) privateb->xfont)->fid);
  117. }
  118. +#ifdef HAVE_XWC
  119. else if (fonta->type == GDK_FONT_FONTSET && fontb->type == GDK_FONT_FONTSET)
  120. {
  121. gchar *namea, *nameb;
  122. @@ -301,6 +304,7 @@
  123. return (strcmp(namea, nameb) == 0);
  124. }
  125. +#endif
  126. else
  127. /* fontset != font */
  128. return FALSE;
  129. @@ -333,10 +337,12 @@
  130. width = XTextWidth16 (xfont, (XChar2b *) string, strlen (string) / 2);
  131. }
  132. break;
  133. +#ifdef HAVE_XWC
  134. case GDK_FONT_FONTSET:
  135. fontset = (XFontSet) font_private->xfont;
  136. width = XmbTextEscapement (fontset, string, strlen(string));
  137. break;
  138. +#endif
  139. default:
  140. width = 0;
  141. }
  142. @@ -372,10 +378,12 @@
  143. width = XTextWidth16 (xfont, (XChar2b *) text, text_length / 2);
  144. }
  145. break;
  146. +#ifdef HAVE_XWC
  147. case GDK_FONT_FONTSET:
  148. fontset = (XFontSet) private->xfont;
  149. width = XmbTextEscapement (fontset, text, text_length);
  150. break;
  151. +#endif
  152. default:
  153. width = 0;
  154. }
  155. @@ -414,6 +422,7 @@
  156. break;
  157. }
  158. +#ifdef HAVE_XWC
  159. case GDK_FONT_FONTSET:
  160. if (sizeof(GdkWChar) == sizeof(wchar_t))
  161. {
  162. @@ -431,6 +440,7 @@
  163. g_free (text_wchar);
  164. }
  165. break;
  166. +#endif
  167. default:
  168. width = 0;
  169. }
  170. @@ -474,10 +484,12 @@
  171. width = XTextWidth (xfont, &character, 1);
  172. }
  173. break;
  174. +#ifdef HAVE_XWC
  175. case GDK_FONT_FONTSET:
  176. fontset = (XFontSet) private->xfont;
  177. width = XmbTextEscapement (fontset, &character, 1) ;
  178. break;
  179. +#endif
  180. default:
  181. width = 0;
  182. }
  183. @@ -523,6 +535,7 @@
  184. break;
  185. }
  186. +#ifdef HAVE_XWC
  187. case GDK_FONT_FONTSET:
  188. fontset = (XFontSet) private->xfont;
  189. {
  190. @@ -530,6 +543,7 @@
  191. width = XwcTextEscapement (fontset, &char_wc, 1) ;
  192. }
  193. break;
  194. +#endif
  195. default:
  196. width = 0;
  197. }
  198. @@ -597,6 +611,7 @@
  199. if (descent)
  200. *descent = overall.descent;
  201. break;
  202. +#ifdef HAVE_XWC
  203. case GDK_FONT_FONTSET:
  204. fontset = (XFontSet) private->xfont;
  205. XmbTextExtents (fontset, text, text_length, &ink, &logical);
  206. @@ -611,6 +626,7 @@
  207. if (descent)
  208. *descent = ink.y + ink.height;
  209. break;
  210. +#endif
  211. }
  212. }
  213. @@ -664,6 +680,7 @@
  214. break;
  215. }
  216. +#ifdef HAVE_XWC
  217. case GDK_FONT_FONTSET:
  218. fontset = (XFontSet) private->xfont;
  219. @@ -691,6 +708,7 @@
  220. if (descent)
  221. *descent = ink.y + ink.height;
  222. break;
  223. +#endif
  224. }
  225. }
  226. @@ -750,11 +768,13 @@
  227. }
  228. width = overall.rbearing;
  229. break;
  230. +#ifdef HAVE_XWC
  231. case GDK_FONT_FONTSET:
  232. fontset = (XFontSet) private->xfont;
  233. XmbTextExtents (fontset, text, text_length, &ink, &log);
  234. width = ink.x + ink.width;
  235. break;
  236. +#endif
  237. default:
  238. width = 0;
  239. }
  240. @@ -818,11 +838,13 @@
  241. }
  242. height = overall.ascent + overall.descent;
  243. break;
  244. +#ifdef HAVE_XWC
  245. case GDK_FONT_FONTSET:
  246. fontset = (XFontSet) private->xfont;
  247. XmbTextExtents (fontset, text, text_length, &ink, &log);
  248. height = log.height;
  249. break;
  250. +#endif
  251. default:
  252. height = 0;
  253. }