Reset any existing preview window

When previewing a hunk we re-use any existing preview window.  However
we need to reset it for our purposes in case it was used in an
incompatible way before.

See #713.
This commit is contained in:
Andy Stewart
2020-06-18 09:38:43 +01:00
parent e31e9bb35f
commit 97a24e903a

View File

@@ -440,19 +440,21 @@ function! s:open_hunk_preview_window()
endif
silent! wincmd P
if !&previewwindow
if &previewwindow
file gitgutter://hunk-preview
else
noautocmd execute g:gitgutter_preview_win_location &previewheight 'new gitgutter://hunk-preview'
doautocmd WinEnter
set previewwindow
endif
if exists('*win_getid')
let s:winid = win_getid()
else
let s:preview_bufnr = bufnr('')
endif
set previewwindow
setlocal filetype=diff buftype=acwrite bufhidden=delete
" Reset some defaults in case someone else has changed them.
setlocal noreadonly modifiable noswapfile
endif
endfunction