win autoclose option rework (should close issue #144)

main
bhagwan 3 years ago
parent 892990262d
commit 47f0671679

@ -43,7 +43,7 @@ M.fzf = function(opts, contents)
fzf_win:create()
local selected = fzf.raw_fzf(contents, M.build_fzf_cli(opts),
{ fzf_binary = opts.fzf_bin })
if not opts.no_win_close then
if fzf_win:autoclose() == nil or fzf_win:autoclose() then
fzf_win:close()
end
return selected

@ -170,6 +170,25 @@ function FzfWin:reset_win_highlights(win, is_border)
vim.api.nvim_win_set_option(win, 'winhighlight', hl)
end
function FzfWin:_set_autoclose(autoclose)
if autoclose ~= nil then
self._autoclose = autoclose
else
self._autoclose = true
end
return self._autoclose
end
function FzfWin.set_autoclose(autoclose)
if not _self then return nil end
return _self:_set_autoclose(autoclose)
end
function FzfWin.autoclose()
if not _self then return nil end
return _self._autoclose
end
function FzfWin:new(o)
if _self then
-- utils.warn("Please close fzf-lua before starting a new instance")
@ -182,6 +201,7 @@ function FzfWin:new(o)
self.previewer = o.previewer
self.previewer_type = o.previewer_type
self._orphaned_bufs = {}
self:_set_autoclose(o.autoclose)
_self = self
return self
end

Loading…
Cancel
Save