]> git.armaanb.net Git - dmenu.git/blobdiff - dmenu.c
Handle IME input
[dmenu.git] / dmenu.c
diff --git a/dmenu.c b/dmenu.c
index c852e92510c6679f6c4561eef307cc89d24ecc7d..314256f0c3cf567d80d19d8157ac149dc3be9eb6 100644 (file)
--- a/dmenu.c
+++ b/dmenu.c
@@ -552,7 +552,7 @@ run(void)
        XEvent ev;
 
        while (!XNextEvent(dpy, &ev)) {
-               if (XFilterEvent(&ev, win))
+               if (XFilterEvent(&ev, None))
                        continue;
                switch(ev.type) {
                case Expose:
@@ -664,6 +664,7 @@ setup(void)
                        XNClientWindow, win, XNFocusWindow, win, NULL);
 
        XMapRaised(dpy, win);
+       XSetInputFocus(dpy, win, RevertToParent, CurrentTime);
        if (embed) {
                XSelectInput(dpy, parentwin, FocusChangeMask);
                if (XQueryTree(dpy, parentwin, &dw, &w, &dws, &du) && dws) {
@@ -729,6 +730,8 @@ main(int argc, char *argv[])
 
        if (!setlocale(LC_CTYPE, "") || !XSupportsLocale())
                fputs("warning: no locale support\n", stderr);
+       if (!XSetLocaleModifiers(""))
+               fputs("warning: no locale modifiers support\n", stderr);
        if (!(dpy = XOpenDisplay(NULL)))
                die("cannot open display");
        screen = DefaultScreen(dpy);