mirror of
https://github.com/neovim/neovim.git
synced 2025-10-16 14:56:08 +00:00

Problem: The screen.c file is much too big.
Solution: Split it in three parts. (Yegappan Lakshmanan, closes vim/vim#4943)
7528d1f6b5
This is an approximation vim-patch 8.1.2057. Applying the patch directly
isn't feasible since our version of screen.c has diverged too much,
however we still introduce drawscreen.c and drawline.c:
- screen.c is now a much smaller file used for low level screen functions
- drawline.c contains everything needed for win_line()
- drawscreen.c contains everything needed for update_screen()
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
25 lines
535 B
C
25 lines
535 B
C
#ifndef NVIM_DRAWLINE_H
|
|
#define NVIM_DRAWLINE_H
|
|
|
|
#include "nvim/decoration_provider.h"
|
|
#include "nvim/fold.h"
|
|
#include "nvim/screen.h"
|
|
|
|
// Maximum columns for terminal highlight attributes
|
|
#define TERM_ATTRS_MAX 1024
|
|
|
|
typedef struct {
|
|
NS ns_id;
|
|
uint64_t mark_id;
|
|
int win_row;
|
|
int win_col;
|
|
} WinExtmark;
|
|
EXTERN kvec_t(WinExtmark) win_extmark_arr INIT(= KV_INITIAL_VALUE);
|
|
|
|
EXTERN bool conceal_cursor_used INIT(= false);
|
|
|
|
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
|
# include "drawline.h.generated.h"
|
|
#endif
|
|
#endif // NVIM_DRAWLINE_H
|