refactor(#2826): View is an Explorer member

This commit is contained in:
Alexander Courtis
2025-04-21 12:02:19 +10:00
parent 0eb21f66f7
commit 44cb3d2f0a
21 changed files with 170 additions and 114 deletions

View File

@@ -4,7 +4,6 @@ local core = require("nvim-tree.core")
local git = require("nvim-tree.git")
local log = require("nvim-tree.log")
local utils = require("nvim-tree.utils")
local view = require("nvim-tree.view")
local node_factory = require("nvim-tree.node.factory")
local DirectoryNode = require("nvim-tree.node.directory")
@@ -20,6 +19,7 @@ local LiveFilter = require("nvim-tree.explorer.live-filter")
local Sorter = require("nvim-tree.explorer.sorter")
local Clipboard = require("nvim-tree.actions.fs.clipboard")
local Renderer = require("nvim-tree.renderer")
local View = require("nvim-tree.view")
local FILTER_REASON = require("nvim-tree.enum").FILTER_REASON
@@ -35,6 +35,7 @@ local config
---@field sorters Sorter
---@field marks Marks
---@field clipboard Clipboard
---@field view View
local Explorer = RootNode:extend()
---@class Explorer
@@ -64,6 +65,7 @@ function Explorer:new(args)
self.live_filter = LiveFilter({ explorer = self })
self.marks = Marks({ explorer = self })
self.clipboard = Clipboard({ explorer = self })
self.view = View({ explorer = self })
self:create_autocmds()
@@ -84,7 +86,7 @@ function Explorer:create_autocmds()
group = self.augroup_id,
callback = function()
appearance.setup()
view.View:reset_winhl()
self.view:reset_winhl()
self.renderer:draw()
end,
})
@@ -486,7 +488,7 @@ function Explorer:reload_explorer()
local projects = git.reload_all_projects()
self:refresh_nodes(projects)
if view.View:is_visible() then
if self.view:is_visible() then
self.renderer:draw()
end
event_running = false
@@ -508,7 +510,7 @@ end
---nil on no explorer or invalid view win
---@return integer[]|nil
function Explorer:get_cursor_position()
local winnr = view.View:get_winnr()
local winnr = self.view:get_winnr()
if not winnr or not vim.api.nvim_win_is_valid(winnr) then
return
end
@@ -523,7 +525,7 @@ function Explorer:get_node_at_cursor()
return
end
if cursor[1] == 1 and view.View:is_root_folder_visible(core.get_cwd()) then
if cursor[1] == 1 and self.view:is_root_folder_visible(core.get_cwd()) then
return self
end