mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-28 10:08:24 +00:00
daaab4406a
character sets). . Bump PORTREVISION. Submitted by: daichi
64 lines
2.2 KiB
C
64 lines
2.2 KiB
C
$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
|