diff options
-rw-r--r-- | pugl/pugl_x11.c | 8 | ||||
-rw-r--r-- | pugl_test.c | 3 |
2 files changed, 8 insertions, 3 deletions
diff --git a/pugl/pugl_x11.c b/pugl/pugl_x11.c index 855d04b..7ceef29 100644 --- a/pugl/pugl_x11.c +++ b/pugl/pugl_x11.c @@ -323,6 +323,7 @@ puglCreateWindow(PuglView* view, const char* title) (Window)(view->transient_parent)); } + XSetLocaleModifiers(""); if (!(impl->xim = XOpenIM(impl->display, NULL, NULL, NULL))) { XSetLocaleModifiers("@im="); if (!(impl->xim = XOpenIM(impl->display, NULL, NULL, NULL))) { @@ -330,10 +331,11 @@ puglCreateWindow(PuglView* view, const char* title) } } - if (!(impl->xic = XCreateIC(impl->xim, XNInputStyle, - XIMPreeditNothing | XIMStatusNothing, + const XIMStyle im_style = XIMPreeditNothing | XIMStatusNothing; + if (!(impl->xic = XCreateIC(impl->xim, + XNInputStyle, im_style, XNClientWindow, impl->win, - XNFocusWindow, impl->win, + XNFocusWindow, impl->win, NULL))) { fprintf(stderr, "warning: XCreateIC failed\n"); } diff --git a/pugl_test.c b/pugl_test.c index 942b725..698299b 100644 --- a/pugl_test.c +++ b/pugl_test.c @@ -18,6 +18,7 @@ @file pugl_test.c A simple Pugl test that creates a top-level window. */ +#include <locale.h> #include <math.h> #include <stdio.h> #include <string.h> @@ -217,6 +218,8 @@ main(int argc, char** argv) } } + setlocale(LC_CTYPE, ""); + PuglView* view = puglInit(NULL, NULL); puglInitWindowClass(view, "PuglTest"); puglInitWindowSize(view, 512, 512); |