diff options
author | glewis <glewis@FreeBSD.org> | 2002-10-19 05:45:45 +0800 |
---|---|---|
committer | glewis <glewis@FreeBSD.org> | 2002-10-19 05:45:45 +0800 |
commit | 6e48443af5473d6bd3c5da3ccbe35b326751478d (patch) | |
tree | 49a63b1da4ea4f0603880c76ca3f7d86b2447cbf /java/jdk15 | |
parent | bc589d406f76a4b30f9a78b7d9ffa70993a6c3fd (diff) | |
download | freebsd-ports-gnome-6e48443af5473d6bd3c5da3ccbe35b326751478d.tar.gz freebsd-ports-gnome-6e48443af5473d6bd3c5da3ccbe35b326751478d.tar.zst freebsd-ports-gnome-6e48443af5473d6bd3c5da3ccbe35b326751478d.zip |
. More XIM fixes for Japanese users (and presumably others with similar
character sets).
. Bump PORTREVISION.
Submitted by: daichi
Diffstat (limited to 'java/jdk15')
-rw-r--r-- | java/jdk15/Makefile | 1 | ||||
-rw-r--r-- | java/jdk15/files/patch-awt_InputMethod.c | 63 |
2 files changed, 64 insertions, 0 deletions
diff --git a/java/jdk15/Makefile b/java/jdk15/Makefile index f3d46f4e0cc7..fddc9c1f996d 100644 --- a/java/jdk15/Makefile +++ b/java/jdk15/Makefile @@ -7,6 +7,7 @@ PORTNAME= jdk PORTVERSION= ${JDK_VERSION}p${JDK_PATCHSET_VERSION} +PORTREVISION= 1 CATEGORIES= java devel MASTER_SITES= # http://www.sun.com/software/java2/download.html # http://www.eyesbeyond.com/freebsddom/java/jdk13.html diff --git a/java/jdk15/files/patch-awt_InputMethod.c b/java/jdk15/files/patch-awt_InputMethod.c new file mode 100644 index 000000000000..db52b6d18e88 --- /dev/null +++ b/java/jdk15/files/patch-awt_InputMethod.c @@ -0,0 +1,63 @@ +$FreeBSD$ + +diff -u -r1.5 awt_InputMethod.c +--- ../src/solaris/native/sun/awt/awt_InputMethod.c 10 Sep 2001 05:31:35 -0000 1.5 ++++ ../src/solaris/native/sun/awt/awt_InputMethod.c 18 Oct 2002 02:58:26 -0000 +@@ -1320,17 +1320,56 @@ + X11InputMethodData *pX11IMData = + (X11InputMethodData *) (unsigned long) data; + char *xText; ++ char *ret; + jstring jText; + ++ XIMPreeditState preeditState = XIMPreeditUnKnown; ++ XVaNestedList preeditAttr; ++ int bGetState = FALSE; ++ + AWT_LOCK(); + +- if (pX11IMData->current_ic) ++ if (pX11IMData->current_ic) { ++ preeditAttr = XVaCreateNestedList(0, XNPreeditState, &preeditState, ++ NULL); ++ if (!XGetICValues(pX11IMData->current_ic, XNPreeditAttributes, ++ preeditAttr, NULL)) { ++ bGetState = TRUE; ++ } ++ XFree(preeditAttr); ++ + xText = XmbResetIC(pX11IMData->current_ic); ++ ++ if (bGetState) { ++ preeditAttr = XVaCreateNestedList(0, XNPreeditState, ++ preeditState, 0); ++ XSetICValues(pX11IMData->current_ic, ++ XNPreeditAttributes, preeditAttr, NULL); ++ XFree(preeditAttr); ++ } ++ } + else { + /* + * If there is no reference to the current XIC, try to reset both XICs. + */ ++ preeditAttr = XVaCreateNestedList(0, XNPreeditState, &preeditState, ++ NULL); ++ if (!XGetICValues(pX11IMData->ic_active, XNPreeditAttributes, ++ preeditAttr, NULL)) { ++ bGetState = TRUE; ++ } ++ XFree(preeditAttr); ++ + xText = XmbResetIC(pX11IMData->ic_active); ++ ++ if (bGetState) { ++ preeditAttr = XVaCreateNestedList(0, XNPreeditState, ++ preeditState, 0); ++ XSetICValues(pX11IMData->ic_active, XNPreeditAttributes, ++ preeditAttr, NULL); ++ XFree(preeditAttr); ++ } ++ + /*it may also means that the real client component does + not have focus -- has been deactivated... its xic should + not have the focus, bug#4284651 showes reset XIC for htt |