Skip to content

Commit b71eacc

Browse files
authored
Merge pull request #296 from lambdalisue/fix-auto-resize
Disable auto-resize on flaoting window of Neovim
2 parents fa8a106 + cc44928 commit b71eacc

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

autoload/fern/internal/drawer/auto_resize.vim

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,22 @@ function! fern#internal#drawer#auto_resize#init() abort
55

66
augroup fern_internal_drawer_init
77
autocmd! * <buffer>
8-
autocmd BufEnter <buffer> call fern#internal#drawer#resize()
9-
autocmd BufLeave <buffer> call fern#internal#drawer#resize()
8+
autocmd BufEnter <buffer> call s:resize()
9+
autocmd BufLeave <buffer> call s:resize()
1010
augroup END
1111
endfunction
12+
13+
if has('nvim')
14+
function! s:is_relative() abort
15+
return nvim_win_get_config(win_getid()).relative !=# ''
16+
endfunction
17+
18+
function! s:resize() abort
19+
if s:is_relative()
20+
return
21+
endif
22+
call fern#internal#drawer#resize()
23+
endfunction
24+
else
25+
let s:resize = funcref('fern#internal#drawer#resize')
26+
endif

doc/fern.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -432,6 +432,11 @@ VARIABLE *fern-variable*
432432
*g:fern#disable_drawer_auto_resize*
433433
Set 1 to disable automatically resize drawer on |BufEnter| and
434434
|BufLeave| autocmd.
435+
436+
Note that this feature is automatically disabled on floating windows
437+
of Neovim to avoid unwilling resize reported as #294
438+
https://github.com/lambdalisue/fern.vim/issues/294
439+
435440
Default: 0
436441

437442
*g:fern#disable_drawer_auto_quit*

0 commit comments

Comments
 (0)