Author: aredridel                    Date: Wed Dec 21 04:40:20 2005 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- add gnome version based on xchat-long-delimiter.patch

---- Files affected:
SOURCES:
   xchat-gnome-long-delimiter.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/xchat-gnome-long-delimiter.patch
diff -u /dev/null SOURCES/xchat-gnome-long-delimiter.patch:1.1
--- /dev/null   Wed Dec 21 05:40:20 2005
+++ SOURCES/xchat-gnome-long-delimiter.patch    Wed Dec 21 05:40:15 2005
@@ -0,0 +1,65 @@
+diff -ur xchat-gnome-0.8-o/src/fe-gnome/xtext.c 
xchat-gnome-0.8/src/fe-gnome/xtext.c
+--- xchat-gnome-0.8-o/src/fe-gnome/xtext.c     2005-11-26 16:26:03.000000000 
-0700
++++ xchat-gnome-0.8/src/fe-gnome/xtext.c       2005-12-20 21:36:01.000000000 
-0700
+@@ -80,9 +80,16 @@
+ #include "marshallers.h"
+ 
+ /* is delimiter */
+-#define is_del(c) \
+-      (c == ' ' || c == '\n' || c == ')' || c == '(' || \
+-       c == '>' || c == '<' || c == ATTR_RESET || c == ATTR_BOLD || c == 0)
++int is_del(const char *c) {
++      int ret;
++      ret = 0;
++      ret = (c[0] == ' ' || c[0] == '\n' || c[0] == ')' || c[0] == '(' || 
++       c[0] == '>' || c[0] == '<' || c[0] == ATTR_RESET || c[0] == ATTR_BOLD 
|| c == 0);
++      if(!ret) {
++              ret = strncmp(c, "“", 3) == 0 || strncmp(c, "”", 3) == 0;
++      }
++      return ret;
++}
+ 
+ #ifdef SCROLL_HACK
+ /* force scrolling off */
+@@ -1802,6 +1809,7 @@
+       int offset;
+       unsigned char *str;
+       unsigned char *word;
++      unsigned char *nstr;
+       int len;
+       int out_of_bounds = 0;
+ 
+@@ -1822,16 +1830,17 @@
+ 
+       str = ent->str + offset;
+ 
+-      while (!is_del (*str) && str != ent->str)
+-              str--;
+-      word = str + 1;
++      while (!is_del(str))
++              str = g_utf8_prev_char(str);
++      word = g_utf8_next_char(str);
+ 
+       len = 0;
+       str = word;
+-      while (!is_del (*str) && len != ent->str_len)
++      while (!is_del(str) && len != ent->str_len)
+       {
+-              str++;
+-              len++;
++              nstr = g_utf8_next_char(str);
++              len += nstr - str;
++              str = nstr;
+       }
+ 
+       if (len > 0 && word[len-1]=='.')
+@@ -3835,7 +3844,7 @@
+                               }
+ 
+                               /* keep a record of the last space, for 
wordwrapping */
+-                              if (is_del (*str))
++                              if (g_unichar_isspace(g_utf8_get_char(str)))
+                               {
+                                       last_space = str;
+                                       limit_offset = 0;
+Only in xchat-gnome-0.8/src/fe-gnome: xtext.c.orig
================================================================
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to