diff options
Diffstat (limited to 'x11-terms/aterm/files/aterm-1.0.1-deadkeys.patch')
-rw-r--r-- | x11-terms/aterm/files/aterm-1.0.1-deadkeys.patch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/x11-terms/aterm/files/aterm-1.0.1-deadkeys.patch b/x11-terms/aterm/files/aterm-1.0.1-deadkeys.patch new file mode 100644 index 000000000000..958f40900bcd --- /dev/null +++ b/x11-terms/aterm/files/aterm-1.0.1-deadkeys.patch @@ -0,0 +1,35 @@ +--- aterm-1.0.1~/src/command.c 2006-06-26 20:01:20.000000000 +0200 ++++ aterm-1.0.1/src/command.c 2007-09-26 15:03:19.000000000 +0200 +@@ -1486,19 +1486,21 @@ + numlock_state = (ev->xkey.state & ModNumLockMask); /* numlock toggle */ + PrivMode((!numlock_state), PrivMode_aplKP); + } +-#ifdef USE_XIM ++#if defined(USE_XIM) || !defined(NO_XLOCALE) + len = 0; +- if (Input_Context != NULL) { +- Status status_return; ++ if (!XFilterEvent(ev, *(&ev->xkey.window))) { ++ if (Input_Context != NULL) { ++ Status status_return; + +- kbuf[0] = '\0'; +- len = XmbLookupString(Input_Context, &ev->xkey, kbuf, +- sizeof(kbuf), &keysym, +- &status_return); +- } else { +- len = XLookupString(&ev->xkey, kbuf, +- sizeof(kbuf), &keysym, +- &compose); ++ kbuf[0] = '\0'; ++ len = XmbLookupString(Input_Context, &ev->xkey, kbuf, ++ sizeof(kbuf), &keysym, ++ &status_return); ++ } else { ++ len = XLookupString(&ev->xkey, kbuf, ++ sizeof(kbuf), &keysym, ++ &compose); ++ } + } + #else /* USE_XIM */ + len = XLookupString(&ev->xkey, (char *) kbuf, sizeof(kbuf), &keysym, &compose); |