refactor(#2826): singleton View class, WIP

This commit is contained in:
Alexander Courtis
2025-04-20 14:28:44 +10:00
parent 0a04e435b1
commit f098195667
9 changed files with 70 additions and 71 deletions

View File

@@ -96,28 +96,28 @@ function Renderer:render_hl(bufnr, hl_range_args)
end
function Renderer:draw()
local bufnr = view.get_bufnr()
local bufnr = view.View:get_bufnr()
if not bufnr or not vim.api.nvim_buf_is_loaded(bufnr) then
return
end
local profile = log.profile_start("draw")
local cursor = vim.api.nvim_win_get_cursor(view.get_winnr() or 0)
local cursor = vim.api.nvim_win_get_cursor(view.View:get_winnr() or 0)
local builder = Builder(self.explorer):build()
self:_draw(bufnr, builder.lines, builder.hl_range_args, builder.signs, builder.extmarks, builder.virtual_lines)
if cursor and #builder.lines >= cursor[1] then
vim.api.nvim_win_set_cursor(view.get_winnr() or 0, cursor)
vim.api.nvim_win_set_cursor(view.View:get_winnr() or 0, cursor)
end
view.View:grow_from_content()
log.profile_end(profile)
events._dispatch_on_tree_rendered(bufnr, view.get_winnr())
events._dispatch_on_tree_rendered(bufnr, view.View:get_winnr())
end
return Renderer