experimental/input-method: Rename to xx_input_method_v2

This is a separate commit so that it's clear the base for this protocol
was just a copy with no changes.

It also includes the protocol in the build system.

Signed-off-by: Dorota Czaplejewicz
This commit is contained in:
dcz 2025-05-07 15:08:07 +00:00 committed by Jonas Ådahl
parent 4da04536e8
commit 8d1ccbdebe

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<protocol name="input_method_unstable_v2"> <protocol name="input_method_experimental_v2">
<copyright> <copyright>
Copyright © 2008-2011 Kristian Høgsberg Copyright © 2008-2011 Kristian Høgsberg
@ -40,24 +40,20 @@
This document adheres to the RFC 2119 when using words like "must", This document adheres to the RFC 2119 when using words like "must",
"should", "may", etc. "should", "may", etc.
Warning! The protocol described in this file is experimental and Warning! The protocol described in this file is currently in the
backward incompatible changes may be made. Backward compatible changes experimental phase. Backwards incompatible major versions of the
may be added together with the corresponding interface version bump. protocol are to be expected. Exposing this protocol without an opt-in
Backward incompatible changes are done by bumping the version number in mechanism is discouraged.
the protocol and interface names and resetting the interface version.
Once the protocol is to be declared stable, the 'z' prefix and the
version number in the protocol and interface names are removed and the
interface version number is reset.
</description> </description>
<interface name="zwp_input_method_v2" version="1"> <interface name="xx_input_method_v1" version="1">
<description summary="input method"> <description summary="input method">
An input method object allows for clients to compose text. An input method object allows for clients to compose text.
The objects connects the client to a text input in an application, and The objects connects the client to a text input in an application, and
lets the client to serve as an input method for a seat. lets the client to serve as an input method for a seat.
The zwp_input_method_v2 object can occupy two distinct states: active and The xx_input_method_v1 object can occupy two distinct states: active and
inactive. In the active state, the object is associated to and inactive. In the active state, the object is associated to and
communicates with a text input. In the inactive state, there is no communicates with a text input. In the inactive state, there is no
associated text input, and the only communication is with the compositor. associated text input, and the only communication is with the compositor.
@ -82,7 +78,7 @@
surrounding_text, text_change_cause, and content_type events, as well surrounding_text, text_change_cause, and content_type events, as well
as the state associated with set_preedit_string, commit_string, and as the state associated with set_preedit_string, commit_string, and
delete_surrounding_text requests. In addition, it marks the delete_surrounding_text requests. In addition, it marks the
zwp_input_method_v2 object as active, and makes any existing xx_input_method_v1 object as active, and makes any existing
zwp_input_popup_surface_v2 objects visible. zwp_input_popup_surface_v2 objects visible.
The surrounding_text, and content_type events must follow before the The surrounding_text, and content_type events must follow before the
@ -90,7 +86,7 @@
functionality. functionality.
State set with this event is double-buffered. It will get applied on State set with this event is double-buffered. It will get applied on
the next zwp_input_method_v2.done event, and stay valid until changed. the next xx_input_method_v1.done event, and stay valid until changed.
</description> </description>
</event> </event>
@ -99,12 +95,12 @@
Notification that no focused text input currently needs an active Notification that no focused text input currently needs an active
input method on this seat. input method on this seat.
This event marks the zwp_input_method_v2 object as inactive. The This event marks the xx_input_method_v1 object as inactive. The
compositor must make all existing zwp_input_popup_surface_v2 objects compositor must make all existing zwp_input_popup_surface_v2 objects
invisible until the next activate event. invisible until the next activate event.
State set with this event is double-buffered. It will get applied on State set with this event is double-buffered. It will get applied on
the next zwp_input_method_v2.done event, and stay valid until changed. the next xx_input_method_v1.done event, and stay valid until changed.
</description> </description>
</event> </event>
@ -133,7 +129,7 @@
functionality and ignore following surrounding_text events. functionality and ignore following surrounding_text events.
Values set with this event are double-buffered. They will get applied Values set with this event are double-buffered. They will get applied
and set to initial values on the next zwp_input_method_v2.done and set to initial values on the next xx_input_method_v1.done
event. event.
The initial state for affected fields is empty, meaning that the text The initial state for affected fields is empty, meaning that the text
@ -158,7 +154,7 @@
cause describes the source of the change. cause describes the source of the change.
The value set with this event is double-buffered. It will get applied The value set with this event is double-buffered. It will get applied
and set to its initial value on the next zwp_input_method_v2.done and set to its initial value on the next xx_input_method_v1.done
event. event.
The initial value of cause is input_method. The initial value of cause is input_method.
@ -169,10 +165,10 @@
<event name="content_type"> <event name="content_type">
<description summary="content purpose and hint"> <description summary="content purpose and hint">
Indicates the content type and hint for the current Indicates the content type and hint for the current
zwp_input_method_v2 instance. xx_input_method_v1 instance.
Values set with this event are double-buffered. They will get applied Values set with this event are double-buffered. They will get applied
on the next zwp_input_method_v2.done event. on the next xx_input_method_v1.done event.
The initial value for hint is none, and the initial value for purpose The initial value for hint is none, and the initial value for purpose
is normal. is normal.
@ -245,7 +241,7 @@
cursor_begin. cursor_begin.
Values set with this event are double-buffered. They must be applied on Values set with this event are double-buffered. They must be applied on
the next zwp_input_method_v2.commit event. the next xx_input_method_v1.commit event.
The initial value of text is an empty string. The initial value of The initial value of text is an empty string. The initial value of
cursor_begin, and cursor_end are both 0. cursor_begin, and cursor_end are both 0.
@ -268,7 +264,7 @@
event sequence). event sequence).
Values set with this event are double-buffered. They must be applied Values set with this event are double-buffered. They must be applied
and reset to initial on the next zwp_input_method_v2.commit request. and reset to initial on the next xx_input_method_v1.commit request.
The initial values of both before_length and after_length are 0. The initial values of both before_length and after_length are 0.
</description> </description>
@ -295,12 +291,12 @@
5. Insert new preedit text in cursor position. 5. Insert new preedit text in cursor position.
6. Place cursor inside preedit text. 6. Place cursor inside preedit text.
The serial number reflects the last state of the zwp_input_method_v2 The serial number reflects the last state of the xx_input_method_v1
object known to the client. The value of the serial argument must be object known to the client. The value of the serial argument must be
equal to the number of done events already issued by that object. When equal to the number of done events already issued by that object. When
the compositor receives a commit request with a serial different than the compositor receives a commit request with a serial different than
the number of past done events, it must proceed as normal, except it the number of past done events, it must proceed as normal, except it
should not change the current state of the zwp_input_method_v2 object. should not change the current state of the xx_input_method_v1 object.
</description> </description>
<arg name="serial" type="uint"/> <arg name="serial" type="uint"/>
</request> </request>
@ -461,7 +457,7 @@
</event> </event>
</interface> </interface>
<interface name="zwp_input_method_manager_v2" version="1"> <interface name="xx_input_method_manager_v2" version="1">
<description summary="input method manager"> <description summary="input method manager">
The input method manager allows the client to become the input method on The input method manager allows the client to become the input method on
a chosen seat. a chosen seat.
@ -472,18 +468,18 @@
<request name="get_input_method"> <request name="get_input_method">
<description summary="request an input method object"> <description summary="request an input method object">
Request a new input zwp_input_method_v2 object associated with a given Request a new input xx_input_method_v1 object associated with a given
seat. seat.
</description> </description>
<arg name="seat" type="object" interface="wl_seat"/> <arg name="seat" type="object" interface="wl_seat"/>
<arg name="input_method" type="new_id" interface="zwp_input_method_v2"/> <arg name="input_method" type="new_id" interface="xx_input_method_v1"/>
</request> </request>
<request name="destroy" type="destructor"> <request name="destroy" type="destructor">
<description summary="destroy the input method manager"> <description summary="destroy the input method manager">
Destroys the zwp_input_method_manager_v2 object. Destroys the zwp_input_method_manager_v2 object.
The zwp_input_method_v2 objects originating from it remain valid. The xx_input_method_v1 objects originating from it remain valid.
</description> </description>
</request> </request>
</interface> </interface>