Skip to content

Commit 9594528

Browse files
committed
refactor(#2826): API uses Explorer's View
1 parent 3a82885 commit 9594528

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

lua/nvim-tree/api.lua

+13-10
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
-- TODO #2826 wrap all the view methods in explorer
2-
31
local core = require("nvim-tree.core")
4-
local view = require("nvim-tree.view")
52
local utils = require("nvim-tree.utils")
63
local actions = require("nvim-tree.actions")
74
local appearance_hi_test = require("nvim-tree.appearance.hi-test")
@@ -143,9 +140,9 @@ Api.tree.focus = Api.tree.open
143140
---@field focus boolean|nil default true
144141

145142
Api.tree.toggle = wrap(actions.tree.toggle.fn)
146-
Api.tree.close = wrap(view.close)
147-
Api.tree.close_in_this_tab = wrap(view.close_this_tab_only)
148-
Api.tree.close_in_all_tabs = wrap(view.close_all_tabs)
143+
Api.tree.close = wrap_explorer_member("view", "close")
144+
Api.tree.close_in_this_tab = wrap_explorer_member("view", "close_this_tab_only")
145+
Api.tree.close_in_all_tabs = wrap_explorer_member("view", "close_all_tabs")
149146
Api.tree.reload = wrap_explorer("reload_explorer")
150147

151148
---@class ApiTreeResizeOpts
@@ -200,12 +197,12 @@ Api.tree.is_tree_buf = wrap(utils.is_nvim_tree_buf)
200197
---@field tabpage number|nil
201198
---@field any_tabpage boolean|nil default false
202199

203-
Api.tree.is_visible = wrap(view.is_visible)
200+
Api.tree.is_visible = wrap_explorer_member("view", "is_visible")
204201

205202
---@class ApiTreeWinIdOpts
206203
---@field tabpage number|nil default nil
207204

208-
Api.tree.winid = wrap(view.winid)
205+
Api.tree.winid = wrap_explorer_member("view", "winid")
209206

210207
Api.fs.create = wrap_node_or_nil(actions.fs.create_file.fn)
211208
Api.fs.remove = wrap_node(actions.fs.remove_file.fn)
@@ -237,13 +234,17 @@ local function edit(mode, node, edit_opts)
237234
local path = file_link and file_link.link_to or node.absolute_path
238235
local cur_tabpage = vim.api.nvim_get_current_tabpage()
239236

237+
local explorer = core.get_explorer()
238+
240239
actions.node.open_file.fn(mode, path)
241240

242241
edit_opts = edit_opts or {}
243242

244243
local mode_unsupported_quit_on_open = mode == "drop" or mode == "tab_drop" or mode == "edit_in_place"
245244
if not mode_unsupported_quit_on_open and edit_opts.quit_on_open then
246-
view.View:close(cur_tabpage)
245+
if explorer then
246+
explorer.view:close(cur_tabpage)
247+
end
247248
end
248249

249250
local mode_unsupported_focus = mode == "drop" or mode == "tab_drop" or mode == "edit_in_place"
@@ -253,7 +254,9 @@ local function edit(mode, node, edit_opts)
253254
if mode == "tabnew" then
254255
vim.cmd(":tabprev")
255256
end
256-
view.View:focus()
257+
if explorer then
258+
explorer.view:focus()
259+
end
257260
end
258261
end
259262

0 commit comments

Comments
 (0)