fix: do not jump to the view window (#36)

This commit is contained in:
yetone 2024-08-17 15:52:12 +08:00 committed by GitHub
parent 80feab88cc
commit 0e0d9d6f7d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -150,6 +150,36 @@ function Sidebar:intialize()
self.renderer:set_size({ width = new_layout.width, height = new_layout.height })
end,
})
local previous_winid = nil
api.nvim_create_autocmd("WinLeave", {
group = self.augroup,
callback = function()
previous_winid = vim.api.nvim_get_current_win()
end,
})
api.nvim_create_autocmd("WinEnter", {
group = self.augroup,
callback = function()
local current_win_id = vim.api.nvim_get_current_win()
if current_win_id ~= self.view.win then
return
end
if self.winid.result == previous_winid and api.nvim_win_is_valid(self.code.win) then
api.nvim_set_current_win(self.code.win)
return
end
if api.nvim_win_is_valid(self.winid.result) then
api.nvim_set_current_win(self.winid.result)
return
end
end,
})
end)
self.renderer:on_unmount(function()