aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Rameau <quinq@fifth.space>2018-03-19 15:42:28 +0100
committerHiltjo Posthuma <hiltjo@codemadness.org>2018-04-22 14:09:05 +0200
commit377bd37e212b1ec4c03a481245603c6560d0be22 (patch)
tree1c0dce9b2169056ff28200d02ca7cd85dc7b65c2
parentb6d2cc9aea979cb3557db39dbe65a2870d13e597 (diff)
Handle IME input
Thanks to nzl <uruabi@gmail.com> for the patch!
-rw-r--r--dmenu.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/dmenu.c b/dmenu.c
index c852e92..314256f 100644
--- a/dmenu.c
+++ b/dmenu.c
@@ -552,7 +552,7 @@ run(void)
552 XEvent ev; 552 XEvent ev;
553 553
554 while (!XNextEvent(dpy, &ev)) { 554 while (!XNextEvent(dpy, &ev)) {
555 if (XFilterEvent(&ev, win)) 555 if (XFilterEvent(&ev, None))
556 continue; 556 continue;
557 switch(ev.type) { 557 switch(ev.type) {
558 case Expose: 558 case Expose:
@@ -664,6 +664,7 @@ setup(void)
664 XNClientWindow, win, XNFocusWindow, win, NULL); 664 XNClientWindow, win, XNFocusWindow, win, NULL);
665 665
666 XMapRaised(dpy, win); 666 XMapRaised(dpy, win);
667 XSetInputFocus(dpy, win, RevertToParent, CurrentTime);
667 if (embed) { 668 if (embed) {
668 XSelectInput(dpy, parentwin, FocusChangeMask); 669 XSelectInput(dpy, parentwin, FocusChangeMask);
669 if (XQueryTree(dpy, parentwin, &dw, &w, &dws, &du) && dws) { 670 if (XQueryTree(dpy, parentwin, &dw, &w, &dws, &du) && dws) {
@@ -729,6 +730,8 @@ main(int argc, char *argv[])
729 730
730 if (!setlocale(LC_CTYPE, "") || !XSupportsLocale()) 731 if (!setlocale(LC_CTYPE, "") || !XSupportsLocale())
731 fputs("warning: no locale support\n", stderr); 732 fputs("warning: no locale support\n", stderr);
733 if (!XSetLocaleModifiers(""))
734 fputs("warning: no locale modifiers support\n", stderr);
732 if (!(dpy = XOpenDisplay(NULL))) 735 if (!(dpy = XOpenDisplay(NULL)))
733 die("cannot open display"); 736 die("cannot open display");
734 screen = DefaultScreen(dpy); 737 screen = DefaultScreen(dpy);