diff options
Diffstat (limited to 'src/wayland/internal.h')
| -rw-r--r-- | src/wayland/internal.h | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/wayland/internal.h b/src/wayland/internal.h index ad6531b..b687a61 100644 --- a/src/wayland/internal.h +++ b/src/wayland/internal.h @@ -5,6 +5,7 @@ #include "api.h" #include "common/timing.h" +#include "common/utf8.h" #include "clipboard.h" #include <wayland-client.h> @@ -38,6 +39,7 @@ #include <unistd.h> #include <xkbcommon/xkbcommon.h> #include <xkbcommon/xkbcommon-keysyms.h> +#include <xkbcommon/xkbcommon-compose.h> #define NBUF 3 @@ -140,6 +142,8 @@ struct seat { struct clipboard *clipboard; struct xkb_keymap *xkb_keymap; struct xkb_state *xkb_state; + struct xkb_compose_state *compose; + bool compose_attempted; uint64_t repeat_started_ns; struct wayland_surface *pointer_focus; struct wayland_surface *keyboard_focus; @@ -152,8 +156,10 @@ struct seat { struct touch_point *touch_primary; uint64_t pointer_buttons; uint64_t tool_buttons; - double axis_v, axis_h, frame_v; - double touch_scroll_y, touch_scroll_rest; + double axis[2], axis_value120[2]; + int64_t axis_discrete[2]; + bool axis_has_value120[2], axis_has_discrete[2]; + double touch_scroll_y; /* Embedded structs */ xkb_mod_mask_t input_mod_masks[8]; @@ -174,18 +180,12 @@ struct seat { uint32_t press_serial; uint32_t pointer_serial; int cursor_shape; - int frame_v120; - int axis_discrete_v, axis_discrete_h; - int axis_value120_v, axis_value120_h; struct yasl_pointer_pen pen; int tool_wheel; /* 1-byte booleans grouped tightly */ bool input_mods_ready; bool repeat_held; - bool axis_has_v120_v; - bool axis_has_v120_h; - bool axis_smooth; bool motion_pending; bool ptr_left_motion; bool tool_motion; @@ -325,8 +325,6 @@ struct wayland_surface { bool want_draw; }; -char *yasl_utf8_sanitize_dup(const char *str); -bool yasl_utf8_validate(const char *str, size_t len); int device_px(int logical, uint32_t scale_120); bool buffer_size(int width, int height, size_t *bytes); @@ -415,6 +413,7 @@ void seat_pointer_reset(struct seat *s); extern const struct zwp_text_input_v3_listener text_input_listener; void ime_reset(struct wayland_surface *w); +void keyboard_text_reset(struct seat *s); void ime_send_caret(struct wayland_surface *w); int surface_init_shell(struct wayland_surface *w, const char *title); |
