summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2020-06-04 02:19:13 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2020-06-04 02:19:13 +0200
commit4385a84c4a79c1b60bf12839899a1544198de975 (patch)
treeee660d81a5f34556793f064d71ae753de125e53d /modules
parentfb65b67169105c82c243f265e0f993cf72efdacd (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.c9
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);