From 352077c78aaf4e51759e37d1279d3c8ce7d70600 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Tue, 7 Dec 2021 22:22:55 +0100 Subject: [PATCH] kitty: simplify: always calculate alternate/base keys But only _emit_ them if report alternate has been enabled. --- input.c | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/input.c b/input.c index 4ced612a..d2cda4aa 100644 --- a/input.c +++ b/input.c @@ -1432,26 +1432,21 @@ emit_escapes: if (key == 0) key = sym_to_use; - if (report_alternate) - alternate = xkb_keysym_to_utf32(sym); - } - - if (report_alternate) { /* The *shifted* key. May be the same as the unshifted * key - if so, this is filtered out below, when * emitting the CSI */ - - /* Base layout key. I.e the symbol the pressed key - * produces in the base/default layout (layout idx - * 0) */ - const xkb_keysym_t *base_syms; - int base_sym_count = xkb_keymap_key_get_syms_by_level( - seat->kbd.xkb_keymap, ctx->key, 0, 0, &base_syms); - - if (base_sym_count > 0) - base = xkb_keysym_to_utf32(base_syms[0]); + alternate = xkb_keysym_to_utf32(sym); } + /* Base layout key. I.e the symbol the pressed key produces in + * the base/default layout (layout idx 0) */ + const xkb_keysym_t *base_syms; + int base_sym_count = xkb_keymap_key_get_syms_by_level( + seat->kbd.xkb_keymap, ctx->key, 0, 0, &base_syms); + + if (base_sym_count > 0) + base = xkb_keysym_to_utf32(base_syms[0]); + final = 'u'; break; }