feat(event): add WillRenameNode (#1821)

This commit is contained in:
Anton 2022-12-12 02:56:50 +02:00 committed by GitHub
parent 8b4aaff783
commit a2c75567ad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 0 deletions

View File

@ -184,6 +184,7 @@ local function do_cut(source, destination)
return true
end
events._dispatch_will_rename_node(source, destination)
local success, errmsg = vim.loop.fs_rename(source, destination)
if not success then
log.line("copy_paste", "do_cut fs_rename failed '%s'", errmsg)

View File

@ -15,6 +15,7 @@ function M.rename(node, to)
return
end
events._dispatch_will_rename_node(node.absolute_path, to)
local success, err = vim.loop.fs_rename(node.absolute_path, to)
if not success then
return notify.warn(err_fmt(node.absolute_path, to, err))

View File

@ -6,6 +6,7 @@ local global_handlers = {}
M.Event = {
Ready = "Ready",
WillRenameNode = "WillRenameNode",
NodeRenamed = "NodeRenamed",
TreeOpen = "TreeOpen",
TreeClose = "TreeClose",
@ -40,6 +41,11 @@ function M._dispatch_ready()
dispatch(M.Event.Ready)
end
--@private
function M._dispatch_will_rename_node(old_name, new_name)
dispatch(M.Event.WillRenameNode, { old_name = old_name, new_name = new_name })
end
--@private
function M._dispatch_node_renamed(old_name, new_name)
dispatch(M.Event.NodeRenamed, { old_name = old_name, new_name = new_name })