feat: Add TreePreOpen and TreePreClose events
This commit is contained in:
parent
5bea2b3752
commit
e9372f3234
@ -8,7 +8,9 @@ M.Event = {
|
||||
Ready = "Ready",
|
||||
WillRenameNode = "WillRenameNode",
|
||||
NodeRenamed = "NodeRenamed",
|
||||
TreePreOpen = "TreePreOpen",
|
||||
TreeOpen = "TreeOpen",
|
||||
TreePreClose = "TreePreClose",
|
||||
TreeClose = "TreeClose",
|
||||
WillCreateFile = "WillCreateFile",
|
||||
FileCreated = "FileCreated",
|
||||
@ -91,11 +93,21 @@ function M._dispatch_folder_removed(folder_name)
|
||||
dispatch(M.Event.FolderRemoved, { folder_name = folder_name })
|
||||
end
|
||||
|
||||
--@private
|
||||
function M._dispatch_on_tree_pre_open()
|
||||
dispatch(M.Event.TreePreOpen, nil)
|
||||
end
|
||||
|
||||
--@private
|
||||
function M._dispatch_on_tree_open()
|
||||
dispatch(M.Event.TreeOpen, nil)
|
||||
end
|
||||
|
||||
--@private
|
||||
function M._dispatch_on_tree_pre_close()
|
||||
dispatch(M.Event.TreePreClose, nil)
|
||||
end
|
||||
|
||||
--@private
|
||||
function M._dispatch_on_tree_close()
|
||||
dispatch(M.Event.TreeClose, nil)
|
||||
|
||||
@ -110,6 +110,7 @@ function M.open(opts)
|
||||
|
||||
local explorer = core.get_explorer()
|
||||
|
||||
events._dispatch_on_tree_pre_open()
|
||||
if should_hijack_current_buf() then
|
||||
view.close_this_tab_only()
|
||||
view.open_in_win()
|
||||
|
||||
@ -238,6 +238,7 @@ local function close(tabpage)
|
||||
return
|
||||
end
|
||||
save_tab_state(tabpage)
|
||||
events._dispatch_on_tree_pre_close()
|
||||
switch_buf_if_last_buf()
|
||||
local tree_win = M.get_winnr(tabpage)
|
||||
local current_win = vim.api.nvim_get_current_win()
|
||||
@ -289,6 +290,7 @@ function M.open(options)
|
||||
|
||||
local profile = log.profile_start("view open")
|
||||
|
||||
events._dispatch_on_tree_pre_open()
|
||||
create_buffer()
|
||||
open_window()
|
||||
M.resize()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user