diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2023-11-30 20:35:25 +0000 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2023-11-30 20:35:25 +0000 |
commit | 1b7b916b7631ddf73c38e3a0070d64e4636cb2f3 (patch) | |
tree | cd08258054db80bb9a11b1061bb091c70b76926a /src/nvim/tui/input.h | |
parent | eaa89c11d0f8aefbb512de769c6c82f61a8baca3 (diff) | |
parent | 4a8bf24ac690004aedf5540fa440e788459e5e34 (diff) | |
download | rneovim-aucmd_textputpost.tar.gz rneovim-aucmd_textputpost.tar.bz2 rneovim-aucmd_textputpost.zip |
Merge remote-tracking branch 'upstream/master' into aucmd_textputpostaucmd_textputpost
Diffstat (limited to 'src/nvim/tui/input.h')
-rw-r--r-- | src/nvim/tui/input.h | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/src/nvim/tui/input.h b/src/nvim/tui/input.h index d33cea6383..2743a5e286 100644 --- a/src/nvim/tui/input.h +++ b/src/nvim/tui/input.h @@ -1,5 +1,4 @@ -#ifndef NVIM_TUI_INPUT_H -#define NVIM_TUI_INPUT_H +#pragma once #include <stdbool.h> #include <stdint.h> @@ -10,33 +9,34 @@ #include "nvim/event/stream.h" #include "nvim/event/time.h" #include "nvim/rbuffer.h" -#include "nvim/tui/input_defs.h" +#include "nvim/tui/input_defs.h" // IWYU pragma: export #include "nvim/tui/tui.h" +#include "nvim/types_defs.h" typedef enum { - kExtkeysNone, - kExtkeysCSIu, - kExtkeysXterm, -} ExtkeysType; + kKeyEncodingLegacy, ///< Legacy key encoding + kKeyEncodingKitty, ///< Kitty keyboard protocol encoding + kKeyEncodingXterm, ///< Xterm's modifyOtherKeys encoding (XTMODKEYS) +} KeyEncoding; -typedef struct term_input { +typedef struct { int in_fd; // Phases: -1=all 0=disabled 1=first-chunk 2=continue 3=last-chunk int8_t paste; - bool waiting; bool ttimeout; - int8_t waiting_for_bg_response; - int8_t waiting_for_csiu_response; - ExtkeysType extkeys_type; - long ttimeoutlen; + + bool waiting_for_kkp_response; ///< True if we are expecting to receive a response to a query for + ///< Kitty keyboard protocol support + + KeyEncoding key_encoding; ///< The key encoding used by the terminal emulator + + OptInt ttimeoutlen; TermKey *tk; TermKey_Terminfo_Getstr_Hook *tk_ti_hook_fn; ///< libtermkey terminfo hook TimeWatcher timer_handle; Loop *loop; Stream read_stream; RBuffer *key_buffer; - uv_mutex_t key_buffer_mutex; - uv_cond_t key_buffer_cond; TUIData *tui_data; } TermInput; @@ -49,5 +49,3 @@ typedef enum { #ifdef INCLUDE_GENERATED_DECLARATIONS # include "tui/input.h.generated.h" #endif - -#endif // NVIM_TUI_INPUT_H |