| /* Generated by wayland-scanner 1.13.0 */ |
| |
| #ifndef TEXT_INPUT_UNSTABLE_V1_SERVER_PROTOCOL_H |
| #define TEXT_INPUT_UNSTABLE_V1_SERVER_PROTOCOL_H |
| |
| #include <stdint.h> |
| #include <stddef.h> |
| #include "wayland-server.h" |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| struct wl_client; |
| struct wl_resource; |
| |
| /** |
| * @page page_text_input_unstable_v1 The text_input_unstable_v1 protocol |
| * @section page_ifaces_text_input_unstable_v1 Interfaces |
| * - @subpage page_iface_zwp_text_input_v1 - text input |
| * - @subpage page_iface_zwp_text_input_manager_v1 - text input manager |
| * @section page_copyright_text_input_unstable_v1 Copyright |
| * <pre> |
| * |
| * Copyright © 2012, 2013 Intel Corporation |
| * |
| * Permission is hereby granted, free of charge, to any person obtaining a |
| * copy of this software and associated documentation files (the "Software"), |
| * to deal in the Software without restriction, including without limitation |
| * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| * and/or sell copies of the Software, and to permit persons to whom the |
| * Software is furnished to do so, subject to the following conditions: |
| * |
| * The above copyright notice and this permission notice (including the next |
| * paragraph) shall be included in all copies or substantial portions of the |
| * Software. |
| * |
| * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
| * DEALINGS IN THE SOFTWARE. |
| * </pre> |
| */ |
| struct wl_seat; |
| struct wl_surface; |
| struct zwp_text_input_manager_v1; |
| struct zwp_text_input_v1; |
| |
| /** |
| * @page page_iface_zwp_text_input_v1 zwp_text_input_v1 |
| * @section page_iface_zwp_text_input_v1_desc Description |
| * |
| * An object used for text input. Adds support for text input and input |
| * methods to applications. A text_input object is created from a |
| * wl_text_input_manager and corresponds typically to a text entry in an |
| * application. |
| * |
| * Requests are used to activate/deactivate the text_input object and set |
| * state information like surrounding and selected text or the content type. |
| * The information about entered text is sent to the text_input object via |
| * the pre-edit and commit events. Using this interface removes the need |
| * for applications to directly process hardware key events and compose text |
| * out of them. |
| * |
| * Text is generally UTF-8 encoded, indices and lengths are in bytes. |
| * |
| * Serials are used to synchronize the state between the text input and |
| * an input method. New serials are sent by the text input in the |
| * commit_state request and are used by the input method to indicate |
| * the known text input state in events like preedit_string, commit_string, |
| * and keysym. The text input can then ignore events from the input method |
| * which are based on an outdated state (for example after a reset). |
| * |
| * Warning! The protocol described in this file is experimental and |
| * backward incompatible changes may be made. Backward compatible changes |
| * may be added together with the corresponding interface version bump. |
| * Backward incompatible changes are done by bumping the version number in |
| * 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. |
| * @section page_iface_zwp_text_input_v1_api API |
| * See @ref iface_zwp_text_input_v1. |
| */ |
| /** |
| * @defgroup iface_zwp_text_input_v1 The zwp_text_input_v1 interface |
| * |
| * An object used for text input. Adds support for text input and input |
| * methods to applications. A text_input object is created from a |
| * wl_text_input_manager and corresponds typically to a text entry in an |
| * application. |
| * |
| * Requests are used to activate/deactivate the text_input object and set |
| * state information like surrounding and selected text or the content type. |
| * The information about entered text is sent to the text_input object via |
| * the pre-edit and commit events. Using this interface removes the need |
| * for applications to directly process hardware key events and compose text |
| * out of them. |
| * |
| * Text is generally UTF-8 encoded, indices and lengths are in bytes. |
| * |
| * Serials are used to synchronize the state between the text input and |
| * an input method. New serials are sent by the text input in the |
| * commit_state request and are used by the input method to indicate |
| * the known text input state in events like preedit_string, commit_string, |
| * and keysym. The text input can then ignore events from the input method |
| * which are based on an outdated state (for example after a reset). |
| * |
| * Warning! The protocol described in this file is experimental and |
| * backward incompatible changes may be made. Backward compatible changes |
| * may be added together with the corresponding interface version bump. |
| * Backward incompatible changes are done by bumping the version number in |
| * 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. |
| */ |
| extern const struct wl_interface zwp_text_input_v1_interface; |
| /** |
| * @page page_iface_zwp_text_input_manager_v1 zwp_text_input_manager_v1 |
| * @section page_iface_zwp_text_input_manager_v1_desc Description |
| * |
| * A factory for text_input objects. This object is a global singleton. |
| * @section page_iface_zwp_text_input_manager_v1_api API |
| * See @ref iface_zwp_text_input_manager_v1. |
| */ |
| /** |
| * @defgroup iface_zwp_text_input_manager_v1 The zwp_text_input_manager_v1 interface |
| * |
| * A factory for text_input objects. This object is a global singleton. |
| */ |
| extern const struct wl_interface zwp_text_input_manager_v1_interface; |
| |
| #ifndef ZWP_TEXT_INPUT_V1_CONTENT_HINT_ENUM |
| #define ZWP_TEXT_INPUT_V1_CONTENT_HINT_ENUM |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * content hint |
| * |
| * Content hint is a bitmask to allow to modify the behavior of the text |
| * input. |
| */ |
| enum zwp_text_input_v1_content_hint { |
| /** |
| * no special behaviour |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_NONE = 0x0, |
| /** |
| * auto completion, correction and capitalization |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_DEFAULT = 0x7, |
| /** |
| * hidden and sensitive text |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_PASSWORD = 0xc0, |
| /** |
| * suggest word completions |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_AUTO_COMPLETION = 0x1, |
| /** |
| * suggest word corrections |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_AUTO_CORRECTION = 0x2, |
| /** |
| * switch to uppercase letters at the start of a sentence |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_AUTO_CAPITALIZATION = 0x4, |
| /** |
| * prefer lowercase letters |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_LOWERCASE = 0x8, |
| /** |
| * prefer uppercase letters |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_UPPERCASE = 0x10, |
| /** |
| * prefer casing for titles and headings (can be language dependent) |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_TITLECASE = 0x20, |
| /** |
| * characters should be hidden |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_HIDDEN_TEXT = 0x40, |
| /** |
| * typed text should not be stored |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_SENSITIVE_DATA = 0x80, |
| /** |
| * just latin characters should be entered |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_LATIN = 0x100, |
| /** |
| * the text input is multiline |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_HINT_MULTILINE = 0x200, |
| }; |
| #endif /* ZWP_TEXT_INPUT_V1_CONTENT_HINT_ENUM */ |
| |
| #ifndef ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_ENUM |
| #define ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_ENUM |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * content purpose |
| * |
| * The content purpose allows to specify the primary purpose of a text |
| * input. |
| * |
| * This allows an input method to show special purpose input panels with |
| * extra characters or to disallow some characters. |
| */ |
| enum zwp_text_input_v1_content_purpose { |
| /** |
| * default input, allowing all characters |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_NORMAL = 0, |
| /** |
| * allow only alphabetic characters |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_ALPHA = 1, |
| /** |
| * allow only digits |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_DIGITS = 2, |
| /** |
| * input a number (including decimal separator and sign) |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_NUMBER = 3, |
| /** |
| * input a phone number |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_PHONE = 4, |
| /** |
| * input an URL |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_URL = 5, |
| /** |
| * input an email address |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_EMAIL = 6, |
| /** |
| * input a name of a person |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_NAME = 7, |
| /** |
| * input a password (combine with password or sensitive_data hint) |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_PASSWORD = 8, |
| /** |
| * input a date |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_DATE = 9, |
| /** |
| * input a time |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_TIME = 10, |
| /** |
| * input a date and time |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_DATETIME = 11, |
| /** |
| * input for a terminal |
| */ |
| ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_TERMINAL = 12, |
| }; |
| #endif /* ZWP_TEXT_INPUT_V1_CONTENT_PURPOSE_ENUM */ |
| |
| #ifndef ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_ENUM |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_ENUM |
| enum zwp_text_input_v1_preedit_style { |
| /** |
| * default style for composing text |
| */ |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_DEFAULT = 0, |
| /** |
| * style should be the same as in non-composing text |
| */ |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_NONE = 1, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_ACTIVE = 2, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_INACTIVE = 3, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_HIGHLIGHT = 4, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_UNDERLINE = 5, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_SELECTION = 6, |
| ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_INCORRECT = 7, |
| }; |
| #endif /* ZWP_TEXT_INPUT_V1_PREEDIT_STYLE_ENUM */ |
| |
| #ifndef ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_ENUM |
| #define ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_ENUM |
| enum zwp_text_input_v1_text_direction { |
| /** |
| * automatic text direction based on text and language |
| */ |
| ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_AUTO = 0, |
| /** |
| * left-to-right |
| */ |
| ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_LTR = 1, |
| /** |
| * right-to-left |
| */ |
| ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_RTL = 2, |
| }; |
| #endif /* ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_ENUM */ |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * @struct zwp_text_input_v1_interface |
| */ |
| struct zwp_text_input_v1_interface { |
| /** |
| * request activation |
| * |
| * Requests the text_input object to be activated (typically when |
| * the text entry gets focus). |
| * |
| * The seat argument is a wl_seat which maintains the focus for |
| * this activation. The surface argument is a wl_surface assigned |
| * to the text_input object and tracked for focus lost. The enter |
| * event is emitted on successful activation. |
| */ |
| void (*activate)(struct wl_client *client, |
| struct wl_resource *resource, |
| struct wl_resource *seat, |
| struct wl_resource *surface); |
| /** |
| * request deactivation |
| * |
| * Requests the text_input object to be deactivated (typically |
| * when the text entry lost focus). The seat argument is a wl_seat |
| * which was used for activation. |
| */ |
| void (*deactivate)(struct wl_client *client, |
| struct wl_resource *resource, |
| struct wl_resource *seat); |
| /** |
| * show input panels |
| * |
| * Requests input panels (virtual keyboard) to show. |
| */ |
| void (*show_input_panel)(struct wl_client *client, |
| struct wl_resource *resource); |
| /** |
| * hide input panels |
| * |
| * Requests input panels (virtual keyboard) to hide. |
| */ |
| void (*hide_input_panel)(struct wl_client *client, |
| struct wl_resource *resource); |
| /** |
| * reset |
| * |
| * Should be called by an editor widget when the input state |
| * should be reset, for example after the text was changed outside |
| * of the normal input method flow. |
| */ |
| void (*reset)(struct wl_client *client, |
| struct wl_resource *resource); |
| /** |
| * sets the surrounding text |
| * |
| * Sets the plain surrounding text around the input position. |
| * Text is UTF-8 encoded. Cursor is the byte offset within the |
| * surrounding text. Anchor is the byte offset of the selection |
| * anchor within the surrounding text. If there is no selected text |
| * anchor, then it is the same as cursor. |
| */ |
| void (*set_surrounding_text)(struct wl_client *client, |
| struct wl_resource *resource, |
| const char *text, |
| uint32_t cursor, |
| uint32_t anchor); |
| /** |
| * set content purpose and hint |
| * |
| * Sets the content purpose and content hint. While the purpose |
| * is the basic purpose of an input field, the hint flags allow to |
| * modify some of the behavior. |
| * |
| * When no content type is explicitly set, a normal content purpose |
| * with default hints (auto completion, auto correction, auto |
| * capitalization) should be assumed. |
| */ |
| void (*set_content_type)(struct wl_client *client, |
| struct wl_resource *resource, |
| uint32_t hint, |
| uint32_t purpose); |
| /** |
| */ |
| void (*set_cursor_rectangle)(struct wl_client *client, |
| struct wl_resource *resource, |
| int32_t x, |
| int32_t y, |
| int32_t width, |
| int32_t height); |
| /** |
| * sets preferred language |
| * |
| * Sets a specific language. This allows for example a virtual |
| * keyboard to show a language specific layout. The "language" |
| * argument is an RFC-3066 format language tag. |
| * |
| * It could be used for example in a word processor to indicate the |
| * language of the currently edited document or in an instant |
| * message application which tracks languages of contacts. |
| */ |
| void (*set_preferred_language)(struct wl_client *client, |
| struct wl_resource *resource, |
| const char *language); |
| /** |
| * @param serial used to identify the known state |
| */ |
| void (*commit_state)(struct wl_client *client, |
| struct wl_resource *resource, |
| uint32_t serial); |
| /** |
| */ |
| void (*invoke_action)(struct wl_client *client, |
| struct wl_resource *resource, |
| uint32_t button, |
| uint32_t index); |
| }; |
| |
| #define ZWP_TEXT_INPUT_V1_ENTER 0 |
| #define ZWP_TEXT_INPUT_V1_LEAVE 1 |
| #define ZWP_TEXT_INPUT_V1_MODIFIERS_MAP 2 |
| #define ZWP_TEXT_INPUT_V1_INPUT_PANEL_STATE 3 |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_STRING 4 |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_STYLING 5 |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_CURSOR 6 |
| #define ZWP_TEXT_INPUT_V1_COMMIT_STRING 7 |
| #define ZWP_TEXT_INPUT_V1_CURSOR_POSITION 8 |
| #define ZWP_TEXT_INPUT_V1_DELETE_SURROUNDING_TEXT 9 |
| #define ZWP_TEXT_INPUT_V1_KEYSYM 10 |
| #define ZWP_TEXT_INPUT_V1_LANGUAGE 11 |
| #define ZWP_TEXT_INPUT_V1_TEXT_DIRECTION 12 |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_ENTER_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_LEAVE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_MODIFIERS_MAP_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_INPUT_PANEL_STATE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_STRING_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_STYLING_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_PREEDIT_CURSOR_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_COMMIT_STRING_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_CURSOR_POSITION_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_DELETE_SURROUNDING_TEXT_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_KEYSYM_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_LANGUAGE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_TEXT_DIRECTION_SINCE_VERSION 1 |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_ACTIVATE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_DEACTIVATE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_SHOW_INPUT_PANEL_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_HIDE_INPUT_PANEL_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_RESET_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_SET_SURROUNDING_TEXT_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_SET_CONTENT_TYPE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_SET_CURSOR_RECTANGLE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_SET_PREFERRED_LANGUAGE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_COMMIT_STATE_SINCE_VERSION 1 |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| */ |
| #define ZWP_TEXT_INPUT_V1_INVOKE_ACTION_SINCE_VERSION 1 |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an enter event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_enter(struct wl_resource *resource_, struct wl_resource *surface) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_ENTER, surface); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an leave event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_leave(struct wl_resource *resource_) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_LEAVE); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an modifiers_map event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_modifiers_map(struct wl_resource *resource_, struct wl_array *map) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_MODIFIERS_MAP, map); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an input_panel_state event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_input_panel_state(struct wl_resource *resource_, uint32_t state) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_INPUT_PANEL_STATE, state); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an preedit_string event to the client owning the resource. |
| * @param resource_ The client's resource |
| * @param serial serial of the latest known text input state |
| */ |
| static inline void |
| zwp_text_input_v1_send_preedit_string(struct wl_resource *resource_, uint32_t serial, const char *text, const char *commit) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_PREEDIT_STRING, serial, text, commit); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an preedit_styling event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_preedit_styling(struct wl_resource *resource_, uint32_t index, uint32_t length, uint32_t style) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_PREEDIT_STYLING, index, length, style); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an preedit_cursor event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_preedit_cursor(struct wl_resource *resource_, int32_t index) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_PREEDIT_CURSOR, index); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an commit_string event to the client owning the resource. |
| * @param resource_ The client's resource |
| * @param serial serial of the latest known text input state |
| */ |
| static inline void |
| zwp_text_input_v1_send_commit_string(struct wl_resource *resource_, uint32_t serial, const char *text) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_COMMIT_STRING, serial, text); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an cursor_position event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_cursor_position(struct wl_resource *resource_, int32_t index, int32_t anchor) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_CURSOR_POSITION, index, anchor); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an delete_surrounding_text event to the client owning the resource. |
| * @param resource_ The client's resource |
| */ |
| static inline void |
| zwp_text_input_v1_send_delete_surrounding_text(struct wl_resource *resource_, int32_t index, uint32_t length) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_DELETE_SURROUNDING_TEXT, index, length); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an keysym event to the client owning the resource. |
| * @param resource_ The client's resource |
| * @param serial serial of the latest known text input state |
| */ |
| static inline void |
| zwp_text_input_v1_send_keysym(struct wl_resource *resource_, uint32_t serial, uint32_t time, uint32_t sym, uint32_t state, uint32_t modifiers) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_KEYSYM, serial, time, sym, state, modifiers); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an language event to the client owning the resource. |
| * @param resource_ The client's resource |
| * @param serial serial of the latest known text input state |
| */ |
| static inline void |
| zwp_text_input_v1_send_language(struct wl_resource *resource_, uint32_t serial, const char *language) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_LANGUAGE, serial, language); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_v1 |
| * Sends an text_direction event to the client owning the resource. |
| * @param resource_ The client's resource |
| * @param serial serial of the latest known text input state |
| */ |
| static inline void |
| zwp_text_input_v1_send_text_direction(struct wl_resource *resource_, uint32_t serial, uint32_t direction) |
| { |
| wl_resource_post_event(resource_, ZWP_TEXT_INPUT_V1_TEXT_DIRECTION, serial, direction); |
| } |
| |
| /** |
| * @ingroup iface_zwp_text_input_manager_v1 |
| * @struct zwp_text_input_manager_v1_interface |
| */ |
| struct zwp_text_input_manager_v1_interface { |
| /** |
| * create text input |
| * |
| * Creates a new text_input object. |
| */ |
| void (*create_text_input)(struct wl_client *client, |
| struct wl_resource *resource, |
| uint32_t id); |
| }; |
| |
| |
| /** |
| * @ingroup iface_zwp_text_input_manager_v1 |
| */ |
| #define ZWP_TEXT_INPUT_MANAGER_V1_CREATE_TEXT_INPUT_SINCE_VERSION 1 |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif |