summaryrefslogtreecommitdiff
path: root/chinese/xcin/files/patch-ab
diff options
context:
space:
mode:
Diffstat (limited to 'chinese/xcin/files/patch-ab')
-rw-r--r--chinese/xcin/files/patch-ab29
1 files changed, 29 insertions, 0 deletions
diff --git a/chinese/xcin/files/patch-ab b/chinese/xcin/files/patch-ab
new file mode 100644
index 000000000000..b14cc06cd7cb
--- /dev/null
+++ b/chinese/xcin/files/patch-ab
@@ -0,0 +1,29 @@
+--- src/xi.c.orig Wed Dec 9 22:43:13 1998
++++ src/xi.c Thu Jul 22 12:34:14 1999
+@@ -1056,19 +1056,25 @@
+
+ void switch_active_client( InmdState *state, Window cli_win )
+ {
++ int refresh = 1;
+ last_win = cli_win;
+
+ if ( ignore_cli_stat )
+ ignore_cli_stat = 0;
+ else
+ if ( state->_CurInMethod )
+- memcpy( &inmdstate, state, sizeof( inmdstate ) );
++ if(memcmp(&inmdstate, state, sizeof( inmdstate)))
++ memcpy( &inmdstate, state, sizeof( inmdstate ) );
++ else
++ refresh = 0;
+
+ if ( hide_xcin && ( EngChi || HalfFull ) )
+ Show_Xcin();
+ else if ( hide_xcin && !EngChi && !HalfFull )
+ XUnmapWindow( display, main_win );
+
++ if(!refresh)
++ return;
+ gotoxy( 0, MROW - 1 );
+
+ ClrShowArea( 0 );