fix(#3101): when renderer.highlight_opened_files = "none" do not reload on BufUnload and BufReadPost (#3102)
* fix(#3101): fix bad reference to renderer.highlight_opened_files during BufUnload and BufReadPost * fix(#3101): only redraw renderer.highlight_opened_files during BufUnload and BufReadPost * fix(#3101): only redraw renderer.highlight_opened_files during BufUnload and BufReadPost * fix(#3101): only redraw renderer.highlight_opened_files during BufUnload and BufReadPost
This commit is contained in:
parent
c3c1935942
commit
5bea2b3752
@ -101,10 +101,19 @@ function Explorer:create_autocmds()
|
||||
vim.api.nvim_create_autocmd("BufReadPost", {
|
||||
group = self.augroup_id,
|
||||
callback = function(data)
|
||||
if (self.filters.state.no_buffer or self.opts.highlight_opened_files ~= "none") and vim.bo[data.buf].buftype == "" then
|
||||
-- only handle normal files
|
||||
if vim.bo[data.buf].buftype ~= "" then
|
||||
return
|
||||
end
|
||||
|
||||
if self.filters.state.no_buffer then
|
||||
-- full reload is required to update the filter state
|
||||
utils.debounce("Buf:filter_buffer_" .. self.uid_explorer, self.opts.view.debounce_delay, function()
|
||||
self:reload_explorer()
|
||||
end)
|
||||
elseif self.opts.renderer.highlight_opened_files ~= "none" then
|
||||
-- draw to update opened highlight
|
||||
self.renderer:draw()
|
||||
end
|
||||
end,
|
||||
})
|
||||
@ -113,10 +122,21 @@ function Explorer:create_autocmds()
|
||||
vim.api.nvim_create_autocmd("BufUnload", {
|
||||
group = self.augroup_id,
|
||||
callback = function(data)
|
||||
if (self.filters.state.no_buffer or self.opts.highlight_opened_files ~= "none") and vim.bo[data.buf].buftype == "" then
|
||||
-- only handle normal files
|
||||
if vim.bo[data.buf].buftype ~= "" then
|
||||
return
|
||||
end
|
||||
|
||||
if self.filters.state.no_buffer then
|
||||
-- full reload is required to update the filter state
|
||||
utils.debounce("Buf:filter_buffer_" .. self.uid_explorer, self.opts.view.debounce_delay, function()
|
||||
self:reload_explorer()
|
||||
end)
|
||||
elseif self.opts.renderer.highlight_opened_files ~= "none" then
|
||||
-- draw to update opened highlight; must be delayed as the buffer is still loaded during BufUnload
|
||||
vim.schedule(function()
|
||||
self.renderer:draw()
|
||||
end)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
Loading…
Reference in New Issue
Block a user