feat: add data to state change and delete events

main
olimorris 2023-02-25 10:39:41 +00:00
parent 296a7d60e7
commit 4c960a99d7
1 changed files with 5 additions and 5 deletions

View File

@ -114,11 +114,11 @@ function M.autoload()
end end
end end
---Start recording the session ---Start recording a session
---@return nil ---@return nil
function M.start() function M.start()
vim.g.persisting = true vim.g.persisting = true
vim.api.nvim_exec_autocmds("User", { pattern = "PersistedStateChange" }) vim.api.nvim_exec_autocmds("User", { pattern = "PersistedStateChange", data = { action = "start" } })
end end
---Stop recording a session ---Stop recording a session
@ -126,7 +126,7 @@ end
function M.stop() function M.stop()
vim.g.persisting = false vim.g.persisting = false
vim.g.persisting_session = nil vim.g.persisting_session = nil
vim.api.nvim_exec_autocmds("User", { pattern = "PersistedStateChange" }) vim.api.nvim_exec_autocmds("User", { pattern = "PersistedStateChange", data = { action = "stop" } })
end end
---Save the session ---Save the session
@ -174,14 +174,14 @@ end
function M.delete() function M.delete()
local session = get_current() local session = get_current()
if session and vim.loop.fs_stat(session) ~= 0 then if session and vim.loop.fs_stat(session) ~= 0 then
vim.api.nvim_exec_autocmds("User", { pattern = "PersistedDeletePre" }) vim.api.nvim_exec_autocmds("User", { pattern = "PersistedDeletePre", data = { name = session } })
vim.schedule(function() vim.schedule(function()
M.stop() M.stop()
vim.fn.system("rm " .. e(session)) vim.fn.system("rm " .. e(session))
end) end)
vim.api.nvim_exec_autocmds("User", { pattern = "PersistedDeletePost" }) vim.api.nvim_exec_autocmds("User", { pattern = "PersistedDeletePost", data = { name = session } })
end end
end end