aboutsummaryrefslogtreecommitdiffstats
path: root/rxvt-unicode/rxvt-unicode-3.1
diff options
context:
space:
mode:
Diffstat (limited to 'rxvt-unicode/rxvt-unicode-3.1')
-rw-r--r--rxvt-unicode/rxvt-unicode-3.1/xim.patch142
-rw-r--r--rxvt-unicode/rxvt-unicode-3.1/xwc.patch14
2 files changed, 156 insertions, 0 deletions
diff --git a/rxvt-unicode/rxvt-unicode-3.1/xim.patch b/rxvt-unicode/rxvt-unicode-3.1/xim.patch
index e69de29bb2..7ea5b9054a 100644
--- a/rxvt-unicode/rxvt-unicode-3.1/xim.patch
+++ b/rxvt-unicode/rxvt-unicode-3.1/xim.patch
@@ -0,0 +1,142 @@
+--- rxvt-unicode-3.1/src/rxvtcolor.C~ 2004-05-10 19:46:33.000000000 +0100
++++ rxvt-unicode-3.1/src/rxvtcolor.C 2004-06-27 18:15:28.000000000 +0100
+@@ -102,6 +102,8 @@
+ put (*this->begin ());
+ }
+
++#ifdef USE_XIM
++
+ /////////////////////////////////////////////////////////////////////////////
+
+ static void
+@@ -141,6 +143,8 @@
+
+ /////////////////////////////////////////////////////////////////////////////
+
++#endif
++
+ rxvt_display::rxvt_display (const char *id)
+ : refcounted (id)
+ , x_ev (this, &rxvt_display::x_cb)
+@@ -185,7 +189,9 @@
+ fcntl (fd, F_SETFD, FD_CLOEXEC);
+
+ XSelectInput (display, root, PropertyChangeMask);
++#ifdef USE_XIM
+ xa_xim_servers = XInternAtom (display, "XIM_SERVERS", 0);
++#endif
+
+ flush ();
+
+@@ -200,12 +206,16 @@
+ XCloseDisplay (display);
+ }
+
++#ifdef USE_XIM
++
+ void rxvt_display::im_change_cb ()
+ {
+ for (im_watcher **i = imw.begin (); i != imw.end (); ++i)
+ (*i)->call ();
+ }
+
++#endif
++
+ void rxvt_display::x_cb (io_watcher &w, short revents)
+ {
+ do
+@@ -215,10 +225,12 @@
+
+ //printf ("T %d w %lx\n", xev.type, xev.xany.window);//D
+
++#ifdef USE_XIM
+ if (xev.type == PropertyNotify
+ && xev.xany.window == root
+ && xev.xproperty.atom == xa_xim_servers)
+ im_change_cb ();
++#endif
+
+ for (int i = xw.size (); i--; )
+ {
+@@ -258,6 +270,8 @@
+ xw[w->active - 1] = 0;
+ }
+
++#ifdef USE_XIM
++
+ void rxvt_display::reg (im_watcher *w)
+ {
+ imw.push_back (w);
+@@ -267,6 +281,7 @@
+ {
+ imw.erase (find (imw.begin (), imw.end (), w));
+ }
++#endif
+
+ void rxvt_display::set_selection_owner (rxvt_term *owner)
+ {
+@@ -276,6 +291,8 @@
+ selection_owner = owner;
+ }
+
++#ifdef USE_XIM
++
+ rxvt_xim *rxvt_display::get_xim (const char *locale, const char *modifiers)
+ {
+ char *id;
+@@ -302,6 +319,8 @@
+ xims.put (xim);
+ }
+
++#endif
++
+ Atom rxvt_display::atom (const char *name)
+ {
+ return XInternAtom (display, name, False);
+--- rxvt-unicode-3.1/src/rxvtcolor.h~ 2004-04-02 19:59:08.000000000 +0100
++++ rxvt-unicode-3.1/src/rxvtcolor.h 2004-06-27 18:13:24.000000000 +0100
+@@ -61,16 +61,20 @@
+ };
+
+ struct rxvt_display : refcounted {
++#ifdef USE_XIM
+ Atom xa_xim_servers;
++#endif
+
+ io_manager_vec<xevent_watcher> xw;
+
+ io_watcher x_ev; void x_cb (io_watcher &w, short revents);
+
++#ifdef USE_XIM
+ refcache<rxvt_xim> xims;
+ vector<im_watcher *> imw;
+
+ void im_change_cb ();
++#endif
+
+ //public
+ Display *display;
+@@ -94,12 +98,15 @@
+
+ void set_selection_owner (rxvt_term *owner);
+
++#ifdef USE_XIM
+ rxvt_xim *get_xim (const char *locale, const char *modifiers);
+ void put_xim (rxvt_xim *xim);
++#endif
+
+ Atom atom (const char *name);
+ };
+
++#ifdef USE_XIM
+ struct im_watcher : watcher, callback0<void> {
+ template<class O1, class O2>
+ im_watcher (O1 *object, void (O2::*method) ())
+@@ -115,6 +122,7 @@
+ display->unreg (this);
+ }
+ };
++#endif
+
+ struct xevent_watcher : watcher, callback1<void, XEvent &> {
+ Window window;
diff --git a/rxvt-unicode/rxvt-unicode-3.1/xwc.patch b/rxvt-unicode/rxvt-unicode-3.1/xwc.patch
index e69de29bb2..24bdfbc554 100644
--- a/rxvt-unicode/rxvt-unicode-3.1/xwc.patch
+++ b/rxvt-unicode/rxvt-unicode-3.1/xwc.patch
@@ -0,0 +1,14 @@
+--- rxvt-unicode-3.1/src/screen.C~ 2004-06-21 20:56:06.000000000 +0100
++++ rxvt-unicode-3.1/src/screen.C 2004-06-27 18:16:38.000000000 +0100
+@@ -3473,9 +3473,11 @@
+
+ // Xwc doesn't handle iso-10646 in wchar_t gracefully, so maybe recode it
+ // manually for XUTF8StringStyle.
++#ifdef HAVE_XWC
+ if (XwcTextListToTextProperty (display->display, &cl, 1, style, &ct) >= 0)
+ freect = 1;
+ else
++#endif
+ {
+ /* if we failed to convert then send it raw */
+ ct.value = (unsigned char *)cl;