aboutsummaryrefslogtreecommitdiffstats
path: root/chinese/ted/files/patch-ad
diff options
context:
space:
mode:
Diffstat (limited to 'chinese/ted/files/patch-ad')
-rw-r--r--chinese/ted/files/patch-ad182
1 files changed, 0 insertions, 182 deletions
diff --git a/chinese/ted/files/patch-ad b/chinese/ted/files/patch-ad
deleted file mode 100644
index 3bfc6ee8802e..000000000000
--- a/chinese/ted/files/patch-ad
+++ /dev/null
@@ -1,182 +0,0 @@
-*** cli_xcin.c.orig Fri Sep 19 01:19:33 1997
---- cli_xcin.c Sat Sep 13 11:41:12 1997
-***************
-*** 0 ****
---- 1,130 ----
-+ /*
-+ Copyright (C) 1994,1995 Edward Der-Hua Liu, Hsin-Chu, Taiwan
-+ */
-+
-+ #include <stdio.h>
-+ #include <stdarg.h>
-+ #include <sys/types.h>
-+ #include <X11/Xlib.h>
-+ #include <X11/Xatom.h>
-+ #include "state.h"
-+ #include "protocol.h"
-+
-+ static Atom xcin_atom=0;
-+ static Window xcin_win=None;
-+ static InmdState inmdstate;
-+ #define ENDIAN_TEST() (*(int *)"\x11\x22\x33\x44"==0x11223344)
-+ static char my_endian;
-+
-+ static connect_xcin(Display *display)
-+ {
-+ Window twin;
-+ xcin_atom=XInternAtom(display, XCIN_ATOM,False);
-+ my_endian=ENDIAN_TEST(); /* if == 11223344, it is big-endian */
-+
-+ xcin_win=XGetSelectionOwner(display,xcin_atom);
-+ return xcin_win;
-+ }
-+
-+ void send_FocusIn(Display *display, Window window)
-+ {
-+ XClientMessageEvent event;
-+ XEvent erreve;
-+ char *tmp=event.data.b;
-+
-+ if (connect_xcin(display)==None) return;
-+ /* Ensure xcin exists, or the process will be hanged */
-+ event.type=ClientMessage;
-+ event.window=window;
-+ event.message_type=xcin_atom;
-+ event.format=8;
-+
-+ tmp[0]=tmp[1]=tmp[2]=0xff;
-+ tmp[3]=CLI_FOCUS_IN;
-+ memcpy(&tmp[4],&inmdstate, sizeof(inmdstate));
-+ XSendEvent(display, xcin_win, False, 0, (XEvent *)&event);
-+ }
-+
-+ static void send_FocusOut(Display *display, Window window)
-+ {
-+ XClientMessageEvent event;
-+ XEvent erreve;
-+ char *tmp=event.data.b;
-+
-+ if (connect_xcin(display)==None) return;
-+ /* Ensure xcin exists, or the process will be hanged */
-+ event.type=ClientMessage;
-+ event.window=window;
-+ event.message_type=xcin_atom;
-+ event.format=8;
-+
-+ tmp[0]=tmp[1]=tmp[2]=0xff;
-+ tmp[3]=CLI_FOCUS_OUT;
-+ memcpy(&tmp[4],&inmdstate, sizeof(inmdstate));
-+ XSendEvent(display, xcin_win, False, 0, (XEvent *)&event);
-+ }
-+
-+ static void big_little(char *i)
-+ {
-+ char t;
-+ t=*i; *i=*(i+3); *(i+3)=t;
-+ t=*(i+1); *(i+1)=*(i+2); *(i+2)=t;
-+ }
-+ static read_keys(Display *display, char *buf)
-+ {
-+ Atom actual_type;
-+ int actual_format,i;
-+ u_long nitems,bytes_after;
-+ char *ttt, *cp;
-+ XCIN_RES res;
-+ int ofs;
-+ cp=(char *)&res;
-+ ofs=0;
-+ do {
-+ if (XGetWindowProperty(display,xcin_win,xcin_atom,
-+ ofs/4,(sizeof(XCIN_RES)+3)/4,
-+ True, AnyPropertyType, &actual_type,&actual_format,
-+ &nitems,&bytes_after,(unsigned char **)&ttt) != Success)
-+ puts("err property");
-+ memcpy((char *)(&res)+(ofs & ~0x3), ttt, nitems);
-+ XFree(ttt);
-+ ofs=(ofs & ~0x3) + nitems;
-+ } while ((!nitems && !ofs) || bytes_after>0);
-+ if (my_endian) {
-+ big_little((char *)&res.len);
-+ big_little((char *)&res.status);
-+ }
-+ memcpy(buf,res.tkey, res.len);
-+ inmdstate=res.inmdstate;
-+ buf[res.len]=0;
-+ return res.status;
-+ }
-+
-+ #include <X11/Xutil.h>
-+
-+ static XComposeStatus compose_status = {NULL, 0};
-+
-+ send_key(Display *display, Window win, XKeyEvent *eve, char *buf)
-+ {
-+ XClientMessageEvent event;
-+ XEvent erreve;
-+ char *tmp=event.data.b;
-+ u_char tttt[8];
-+ KeySym keysym;
-+ int count;
-+
-+ if (xcin_win==None && connect_xcin(display)==None)
-+ return K_REJECT;
-+ if ((xcin_win=XGetSelectionOwner(display,xcin_atom))==None)
-+ return K_REJECT;
-+
-+ event.type=ClientMessage;
-+ event.window=win;
-+ event.message_type=xcin_atom;
-+ event.format=32;
-+ count =XLookupString (eve, tttt, sizeof(tmp), (KeySym *)tmp, &compose_status);
-+ memcpy(&tmp[4],&eve->state,4);
-+ XSendEvent(display, xcin_win, False, 0, (XEvent *)&event);
-+ XSync(display,False);
-+ return (read_keys(display, buf));
-+ }
-*** protocol.h.orig Fri Sep 19 01:19:44 1997
---- protocol.h Fri Sep 19 01:19:41 1997
-***************
-*** 0 ****
---- 1,13 ----
-+ /*
-+ Copyright (C) 1994 Edward Der-Hua Liu, Hsin-Chu, Taiwan
-+ */
-+
-+ #define K_REJECT (0)
-+ #define K_ACCEPT (1)
-+
-+ #define CLI_FOCUS_IN (1)
-+ #define CLI_FOCUS_OUT (3)
-+
-+ #define LOAD_KEYWORD (2)
-+
-+ #define XCIN_ATOM "XCIN_A"
-*** state.h.orig Fri Sep 19 01:20:14 1997
---- state.h Fri Sep 19 01:20:05 1997
-***************
-*** 0 ****
---- 1,24 ----
-+ /*
-+ Copyright (C) 1994 Edward Der-Hua Liu, Hsin-Chu, Taiwan
-+ */
-+
-+ typedef struct {
-+ char kb_state;
-+ char _CurInMethod;
-+ } InmdState;
-+
-+ #define EngChiMask (1)
-+ #define HalfFullMask (2)
-+
-+ typedef struct {
-+ int len;
-+ int status;
-+ InmdState inmdstate;
-+ char tkey[512];
-+ } XCIN_RES;
-+
-+ #define EngChi ((inmdstate.kb_state & EngChiMask) ? 1:0)
-+ #define HalfFull ((inmdstate.kb_state & HalfFullMask) ? 1:0)
-+ #define CurInMethod (inmdstate._CurInMethod)
-+ /*extern InmdState inmdstate;
-+ */