diff options
author | luukvbaal <luukvbaal@gmail.com> | 2024-11-18 15:35:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-18 06:35:21 -0800 |
commit | 40347f6e27f1594797ecb0b268076a94630e4c1b (patch) | |
tree | f354b7ffef8aa1dc1d21efb67dff250bda73c92c /runtime/lua/vim/treesitter/highlighter.lua | |
parent | 1763eddede82697a081d8741bd7e780c1b729de0 (diff) | |
download | rneovim-40347f6e27f1594797ecb0b268076a94630e4c1b.tar.gz rneovim-40347f6e27f1594797ecb0b268076a94630e4c1b.tar.bz2 rneovim-40347f6e27f1594797ecb0b268076a94630e4c1b.zip |
fix(api): only flush nvim__redraw when necessary #31250
Problem: Not possible to only set a "redraw later" type with
nvim__redraw, which seems to be desired for the
treesitter highlighter.
Solution: Do not update the screen when "flush" is explicitly set to
false and only redraw later types are present. In that case,
do not call ui_flush() either.
Diffstat (limited to 'runtime/lua/vim/treesitter/highlighter.lua')
-rw-r--r-- | runtime/lua/vim/treesitter/highlighter.lua | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/lua/vim/treesitter/highlighter.lua b/runtime/lua/vim/treesitter/highlighter.lua index 05124c29f0..8ce8652f7d 100644 --- a/runtime/lua/vim/treesitter/highlighter.lua +++ b/runtime/lua/vim/treesitter/highlighter.lua @@ -219,8 +219,8 @@ end ---@package ---@param changes Range6[] function TSHighlighter:on_changedtree(changes) - for i, ch in ipairs(changes) do - api.nvim__redraw({ buf = self.bufnr, range = { ch[1], ch[4] + 1 }, flush = i == #changes }) + for _, ch in ipairs(changes) do + api.nvim__redraw({ buf = self.bufnr, range = { ch[1], ch[4] + 1 }, flush = false }) end end |