aboutsummaryrefslogtreecommitdiffstats
path: root/java/jdk15
diff options
context:
space:
mode:
authorglewis <glewis@FreeBSD.org>2002-10-19 05:45:45 +0800
committerglewis <glewis@FreeBSD.org>2002-10-19 05:45:45 +0800
commit6e48443af5473d6bd3c5da3ccbe35b326751478d (patch)
tree49a63b1da4ea4f0603880c76ca3f7d86b2447cbf /java/jdk15
parentbc589d406f76a4b30f9a78b7d9ffa70993a6c3fd (diff)
downloadfreebsd-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/Makefile1
-rw-r--r--java/jdk15/files/patch-awt_InputMethod.c63
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