ibus: PostProcessKeyEvent for clients that process keys synchronously
GTK 4's IBus module, and GTK 3's with IBUS_ENABLE_SYNC_MODE=1, waits for its ProcessKeyEvent reply and cannot take signals meanwhile; since IBus 1.5.29 it then reads the PostProcessKeyEvent property for what the key produced. strans answered that read with an error, so every key logged a warning and a commit made by a key that passed on arrived after the key: 한 and a comma became ,한. A context that sets EffectivePostProcessKeyEvent now has its commits and preedits held during the key and handed over as the (yv) list IBus defines.
This commit is contained in:
@@ -178,7 +178,9 @@ doas make -C gtk uninstall
|
||||
```
|
||||
|
||||
strans provides its own IBus endpoint; `ibus-daemon` and fcitx are not
|
||||
required. Without `DISPLAY`, the daemon and IBus frontend still work, but XIM
|
||||
required. IBus clients that process keys synchronously — GTK 4, or GTK 3
|
||||
with `IBUS_ENABLE_SYNC_MODE=1` — get their commits and preedits through
|
||||
`PostProcessKeyEvent`, in order with the key. Without `DISPLAY`, the daemon and IBus frontend still work, but XIM
|
||||
is not started and the popup is disabled.
|
||||
|
||||
## Dictionary data
|
||||
|
||||
Reference in New Issue
Block a user