Commit Diff


commit - bdd649a10289ade364f3deab3bbf6ee3169d67ca
commit + 5f48e89716a74e75b6040fdb067372180626b699
blob - bb64c55dd2f1ce4164914383f9ea1021bc64ea71
blob + b89d094dada5d60fe76307ca7fb6a41efa0bdc90
--- st.c
+++ st.c
@@ -3912,6 +3912,13 @@ run(void) {
 	/* Waiting for window mapping */
 	do {
 		XNextEvent(xw.dpy, &ev);
+		/*
+		 * XFilterEvent is required to be called after you using XOpenIM,
+		 * this is not unnecessary.It does not only filter the key event,
+		 * but some clientmessage for input method as well.
+		 */
+		if(XFilterEvent(&ev, None))
+			continue;
 		if(ev.type == ConfigureNotify) {
 			w = ev.xconfigure.width;
 			h = ev.xconfigure.height;