diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-06-04 02:19:13 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-06-04 02:19:13 +0200 |
commit | 4385a84c4a79c1b60bf12839899a1544198de975 (patch) | |
tree | ee660d81a5f34556793f064d71ae753de125e53d /modules | |
parent | fb65b67169105c82c243f265e0f993cf72efdacd (diff) |
Braille: Fix default lookup
cbb59d172 ('Braille: Fix typing quickly') broke the default lookup that
translates Braille keysym patterns to Braille Unicode patterns since it
rightfully clears brl_committing, but then we do not have it any more to
fill brl_committed.
This change saves the committed pattern so we can return it in the
default lookup.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/im/ximcp/imLcFlt.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/modules/im/ximcp/imLcFlt.c b/modules/im/ximcp/imLcFlt.c index 4dee0461..3ed463ac 100644 --- a/modules/im/ximcp/imLcFlt.c +++ b/modules/im/ximcp/imLcFlt.c @@ -47,7 +47,8 @@ _XimLocalFilter(Display *d, Window w, XEvent *ev, XPointer client_data) unsigned currstate; DefTree *b = ic->private.local.base.tree; DTIndex t; - Bool braille = False, anymodifier = False; + Bool anymodifier = False; + unsigned char braillePattern = 0; if(ev->xkey.keycode == 0) return (False); @@ -70,7 +71,7 @@ _XimLocalFilter(Display *d, Window w, XEvent *ev, XPointer client_data) /* Commited a braille pattern, let it go through compose tree */ keysym = XK_braille_blank | ic->private.local.brl_committing; ev->type = KeyPress; - braille = True; + braillePattern = ic->private.local.brl_committing; ic->private.local.brl_committing = 0; } else { return(True); @@ -146,9 +147,9 @@ _XimLocalFilter(Display *d, Window w, XEvent *ev, XPointer client_data) } emit_braille: - if(braille) { + if(braillePattern) { /* Braille pattern is not in compose tree, emit alone */ - ic->private.local.brl_committed = ic->private.local.brl_committing; + ic->private.local.brl_committed = braillePattern; ic->private.local.composed = 0; ev->xkey.keycode = 0; _XPutBackEvent(d, ev); |