text-input: Add input_provided hint

Submitted by Dorota Czaplejewicz on July 29, 2019, 11:55 a.m.


Message ID 20190729115550.17991-1-dorota.czaplejewicz@puri.sm
State New
Headers show
Series "text-input: Add input_provided hint" ( rev: 1 ) in Wayland

Not browsing as part of any series.

Commit Message

Dorota Czaplejewicz July 29, 2019, 11:55 a.m.
The new hint is meant to indicate that the text input already provides a means to enter data, and that using the system input method is optional.

It should be used when the client presents the user with a custom input method, like an on-screen keyboard, or perhaps a dropdown list.

The new hint is meant to address the issue when the system input method is an on-screen keyboard. Without the hint, the input method would not know that it's not needed, unless the client refrained from using the input method protocol at all.

With the hint, the input method can still be enabled, while never displaying a second on-screen keyboard. This allows for the system input method to still provide accessibility services, as well as text completion or prediction.

Based on discussion in https://gitlab.gnome.org/GNOME/gtk/merge_requests/978

Signed-off-by: Dorota Czaplejewicz <dorota.czaplejewicz@puri.sm>

here's a patch that bumps the text-input interface in order to introduce a new enum value. I think the commit message explains the reasoning, so I'm happy to hear feedback.

While writing this change, I decided not to go overboard and ignore things like the input method communicating whether it did pop up the on-screen keyboard after all.

Dorota Czaplejewicz

 unstable/text-input/text-input-unstable-v3.xml | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/unstable/text-input/text-input-unstable-v3.xml b/unstable/text-input/text-input-unstable-v3.xml
index 8b710fd..ec60b6f 100644
--- a/unstable/text-input/text-input-unstable-v3.xml
+++ b/unstable/text-input/text-input-unstable-v3.xml
@@ -47,7 +47,7 @@ 
     interface version number is reset.
-  <interface name="zwp_text_input_v3" version="1">
+  <interface name="zwp_text_input_v3" version="2">
     <description summary="text input">
       The zwp_text_input_v3 interface represents text input and input methods
       associated with a seat. It provides enter/leave events to follow the
@@ -205,6 +205,9 @@ 
       <entry name="sensitive_data" value="0x80" summary="typed text should not be stored"/>
       <entry name="latin" value="0x100" summary="just Latin characters should be entered"/>
       <entry name="multiline" value="0x200" summary="the text input is multiline"/>
+      <entry
+        name="input_provided" value="0x400" since="2"
+        summary="a way to fill in the input is already provided by the client"/>
     <enum name="content_purpose">