Joshua Ashton
bf61af1f82
ime: Fix local_ime segfault
...
Error in rebasing
2023-01-12 15:07:12 +00:00
Joshua Ashton
b0f2b7e89f
ime: Add support for local IMEs
2023-01-11 21:20:24 +00:00
Joshua Ashton
1c186cd286
ime: Fix warnings on newer compilers
...
Should unbreak CI.
2023-01-11 19:19:03 +00:00
Joshua Ashton
91fbb22bda
wlserver, ime: Port to wlroots 0.16.0
...
Co-authored-by: Simon Ser <contact@emersion.fr>
2022-11-24 19:56:17 +01:00
Ben Jackson
40cbcd87ef
ime: Delay release of last keypress
...
More closely simulate a human pressing by holding the last (or only) key in
key pressed for 30ms before releasing. The key is released automatically
after the timer expires or just in time before a subsequent injected key.
2022-09-13 10:18:00 -07:00
Simon Ser
3303289afa
ime: add move_{up,down} actions
2022-09-13 17:56:33 +01:00
Ben Jackson
5f974de2eb
ime: Don't reset to default keymap for actions (enter, etc) if ime keyboard in use
2022-08-23 16:06:26 -07:00
Ben Jackson
8c816a4685
ime: Force Hangul Compat Jamo codepoints to use generic keysyms
2022-07-12 13:11:48 -07:00
Ben Jackson
27ab72ec72
ime: Avoid keymap reset on each injection.
2022-06-14 14:56:56 -07:00
Sam Lantinga
d4bdeb71e2
ime: fix typing the EURO symbol using the on-screen keyboard
2022-04-27 19:03:28 +02:00
Simon Ser
66f603e6c4
ime: use default keymap if possible
2022-03-01 18:46:51 +00:00
Simon Ser
279321fa73
ime: fix utf8_size for the NUL character
2022-03-01 18:46:51 +00:00
Simon Ser
ba32e4df21
ime: add support for actions
2021-10-08 22:55:01 -07:00
Simon Ser
a3ec65ef06
Switch to vendored protocol
...
We'll implement some more features on top of input-method, so let's
incubate our own protocol for now. We'll give feedback upstream
once we've experimented a bit with this approach.
The protocol is minimal: it just includes the features needed for
gamescope. It's always easier to add new requests/events than to
change existing ones.
2021-10-08 22:55:01 -07:00
Simon Ser
ad26899b20
ime: reset keymap after sending emulated key events
...
This fixes SteamOS' virtual keyboard.
2021-10-08 22:55:01 -07:00
Simon Ser
6d2b53197e
ime: introduce keycode allow-list
...
Some clients (Chromium…) assume keycodes are always coming from
evdev, and interpret e.g. KEY_ESC directly without using the keymap.
2021-10-08 22:55:01 -07:00
Simon Ser
2ba6eefad8
ime: check for xkb_keysym_get_name errors
2021-10-08 22:55:01 -07:00
Simon Ser
6f26dae77e
ime: send void keysym before key sequence
...
This works around Chromium issues.
2021-10-08 22:55:01 -07:00
Simon Ser
880c87f4c5
ime: disable key repeat
...
Just in case.
2021-10-08 22:55:01 -07:00
Simon Ser
97623694dc
ime: remove unicode keysym name workaround
...
It seems like xkb_keysym_get_name behaves as expected now.
2021-10-08 22:55:01 -07:00
Simon Ser
49da53db55
Implement a subset of input-method-unstable-v2
...
This allows a Wayland client to send arbitrary UTF-8 text to the
currently focused X11 client. Useful for virtual keyboards.
We generate a keymap on-the-fly suitable for the text to type.
2021-10-08 22:55:01 -07:00