Carlos Garnacho
381048cf90
wayland: Restore IM state flushing before handling key events
...
The code that maybe flushed IM state before processing a key event
became ineffective at commit 7716b62fa2, since the handle_event()
method on MetaWaylandTextInput won't handle key events, only IM
events and touch/button press events causing IM state to be
committed. Basically, the events that directly change the IM state.
Move this ineffective code to the the filter_event() method handling
the key presses in order to let the IM maybe filter them, and handle
them so that any key event that is let through (both key events
previously injected by the IM, and key events that the IM chooses to
ignore) will ensure that the pending IM state is flushed before the
key event is handled and emitted to the client.
This brings back lost guarantees of orderly event emission when IMs
alternate key events and IM actions.
Fixes: 7716b62fa2 ("clutter: Separate ClutterInputFocus event processing and filtering")
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3090
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3536 >
2024-01-27 10:18:40 +00:00
..
2023-02-13 15:34:24 +00:00
2021-12-22 16:22:08 +00:00
2023-11-04 01:12:11 +00:00
2024-01-09 18:47:34 +00:00
2023-08-30 08:48:23 +02:00
2023-11-03 11:27:52 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2024-01-09 18:47:34 +00:00
2023-11-04 01:12:11 +00:00
2023-12-20 23:51:14 +00:00
2023-11-03 11:27:52 +00:00
2023-08-30 08:48:23 +02:00
2024-01-09 15:23:04 +00:00
2023-12-18 21:56:59 +00:00
2023-11-04 01:12:11 +00:00
2022-12-17 15:13:48 +01:00
2023-08-07 22:24:36 +00:00
2024-01-12 14:39:17 +00:00
2023-08-12 19:53:46 +00:00
2023-09-06 10:55:55 +00:00
2023-08-07 22:24:36 +00:00
2023-09-06 10:55:55 +00:00
2023-08-07 22:24:36 +00:00
2020-05-13 18:27:46 +02:00
2023-08-07 22:24:36 +00:00
2023-07-19 11:33:59 +00:00
2023-08-07 22:24:36 +00:00
2024-01-22 14:20:30 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-10-29 21:16:24 +00:00
2023-10-29 21:16:24 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-11-04 01:12:11 +00:00
2023-08-30 08:48:23 +02:00
2023-11-04 01:12:11 +00:00
2023-08-30 08:48:23 +02:00
2023-12-06 16:01:36 +00:00
2023-08-26 20:19:22 +02:00
2019-11-21 15:02:27 +00:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2024-01-12 14:39:17 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 16:46:14 +02:00
2023-08-30 08:48:23 +02:00
2023-11-04 01:12:11 +00:00
2023-11-03 11:27:52 +00:00
2023-11-04 01:12:11 +00:00
2023-08-07 22:24:36 +00:00
2023-11-04 01:12:11 +00:00
2023-08-07 22:24:36 +00:00
2023-11-04 01:12:11 +00:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-11-15 10:55:21 +00:00
2023-11-04 01:12:11 +00:00
2023-11-04 01:12:11 +00:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-11-04 01:12:11 +00:00
2023-11-04 01:12:11 +00:00
2023-11-03 11:27:52 +00:00
2023-11-03 11:27:52 +00:00
2024-01-12 14:39:17 +00:00
2024-01-12 14:39:17 +00:00
2023-11-15 10:55:21 +00:00
2023-08-30 16:46:14 +02:00
2023-10-29 21:16:24 +00:00
2023-08-30 08:48:23 +02:00
2023-11-15 10:55:21 +00:00
2023-11-08 09:47:57 +00:00
2023-12-18 21:56:59 +00:00
2024-01-09 18:47:34 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-12 19:53:46 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-11-15 10:55:21 +00:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2024-01-27 10:18:40 +00:00
2023-08-30 08:48:23 +02:00
2023-11-15 10:55:21 +00:00
2023-08-07 22:24:36 +00:00
2023-11-15 10:55:21 +00:00
2023-11-08 09:47:57 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-11-04 01:12:11 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 16:46:14 +02:00
2023-08-30 16:46:14 +02:00
2023-11-04 01:12:11 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2024-01-12 14:39:17 +00:00
2023-08-30 08:48:23 +02:00
2024-01-26 22:22:52 +00:00
2024-01-12 14:39:17 +00:00
2024-01-10 13:58:18 +00:00
2023-08-30 16:46:14 +02:00
2024-01-10 13:58:18 +00:00
2023-08-07 22:24:36 +00:00
2023-08-30 08:48:23 +02:00
2024-01-10 13:58:18 +00:00
2024-01-12 14:39:17 +00:00
2023-08-30 08:48:23 +02:00
2023-10-09 07:36:52 +00:00
2023-08-30 16:46:14 +02:00
2023-08-30 08:48:23 +02:00
2024-01-12 14:39:17 +00:00
2023-08-30 08:48:23 +02:00