From 7b4b48187e5a62a2d3a8e3390c68682256d1d9e6 Mon Sep 17 00:00:00 2001 From: Pascal Terjan Date: Thu, 26 Aug 2010 21:14:12 +0000 Subject: [PATCH] * Fix using dead keys on my us_intl keyboard - Ignore key events when XFilterEvent returns true - Do not set key to 0 when it is over 128 --- caca/driver/x11.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caca/driver/x11.c b/caca/driver/x11.c index 6cb64a1..822d33a 100644 --- a/caca/driver/x11.c +++ b/caca/driver/x11.c @@ -598,11 +598,14 @@ static int x11_get_event(caca_display_t *dp, caca_privevent_t *ev) else continue; + if(XFilterEvent(&xevent, None) == True) + continue; + #if defined X_HAVE_UTF8_STRING if(Xutf8LookupString(dp->drv.p->ic, &xevent.xkey, ev->data.key.utf8, 8, NULL, NULL)) { ev->data.key.utf32 = caca_utf8_to_utf32(ev->data.key.utf8, NULL); - if(ev->data.key.utf32 <= 0x7f) + if(ev->data.key.utf32 <= 0xff) { ev->data.key.ch = ev->data.key.utf32; } else {