From 73b6115799469b6da12ebbfe437b0e5415e94316 Mon Sep 17 00:00:00 2001 From: dcz Date: Thu, 17 Apr 2025 03:45:21 +0000 Subject: [PATCH] experimental/input-method: Implement only text-input counterparts This change strips down the protocol to functionality that corresponds to text-input-v3, is already useful, typically implemented in the wild (squeekboard), and well-understood. Dificult to implement well functionality like keyboard grabs is removed to find a better solution without stopping the development of the basic functionality. Signed-off-by: Dorota Czaplejewicz --- .../xx-input-method/xx-input-method-v2.xml | 133 +----------------- 1 file changed, 1 insertion(+), 132 deletions(-) diff --git a/experimental/xx-input-method/xx-input-method-v2.xml b/experimental/xx-input-method/xx-input-method-v2.xml index adce2ea..7735570 100644 --- a/experimental/xx-input-method/xx-input-method-v2.xml +++ b/experimental/xx-input-method/xx-input-method-v2.xml @@ -301,38 +301,6 @@ - - - Creates a new zwp_input_popup_surface_v2 object wrapping a given - surface. - - The surface gets assigned the "input_popup" role. If the surface - already has an assigned role, the compositor must issue a protocol - error. - - - - - - - - Allow an input method to receive hardware keyboard input and process - key events to generate text events (with pre-edit) over the wire. This - allows input methods which compose multiple key events for inputting - text like it is done for CJK languages. - - The compositor should send all keyboard events on the seat to the grab - holder via the returned wl_keyboard object. Nevertheless, the - compositor may decide not to forward any particular event. The - compositor must not further process any event after it has been - forwarded to the grab holder. - - Releasing the resulting wl_keyboard object releases the grab. - - - - The input method ceased to be available. @@ -353,110 +321,11 @@ Destroys the zwp_text_input_v2 object and any associated child - objects, i.e. zwp_input_popup_surface_v2 and - zwp_input_method_keyboard_grab_v2. + objects. - - - This interface marks a surface as a popup for interacting with an input - method. - - The compositor should place it near the active text input area. It must - be visible if and only if the input method is in the active state. - - The client must not destroy the underlying wl_surface while the - zwp_input_popup_surface_v2 object exists. - - - - - Notify about the position of the area of the text input expressed as a - rectangle in surface local coordinates. - - This is a hint to the input method telling it the relative position of - the text being entered. - - - - - - - - - - - - - - The zwp_input_method_keyboard_grab_v2 interface represents an exclusive - grab of the wl_keyboard interface associated with the seat. - - - - - This event provides a file descriptor to the client which can be - memory-mapped to provide a keyboard mapping description. - - - - - - - - - A key was pressed or released. - The time argument is a timestamp with millisecond granularity, with an - undefined base. - - - - - - - - - - Notifies clients that the modifier and/or group state has changed, and - it should update its local state. - - - - - - - - - - - - - - - Informs the client about the keyboard's repeat rate and delay. - - This event is sent as soon as the zwp_input_method_keyboard_grab_v2 - object has been created, and is guaranteed to be received by the - client before any key press event. - - Negative values for either rate or delay are illegal. A rate of zero - will disable any repeating (regardless of the value of delay). - - This event can be sent later on as well with a new value if necessary, - so clients should continue listening for the event past the creation - of zwp_input_method_keyboard_grab_v2. - - - - - - The input method manager allows the client to become the input method on