diff --git a/autoload/gitgutter/hunk.vim b/autoload/gitgutter/hunk.vim index 5993090..45f3ccc 100644 --- a/autoload/gitgutter/hunk.vim +++ b/autoload/gitgutter/hunk.vim @@ -462,18 +462,16 @@ function! s:open_hunk_preview_window() call nvim_buf_set_option(buf, 'swapfile', v:false) call nvim_buf_set_name(buf, 'gitgutter://hunk-preview') + if g:gitgutter_close_preview_on_escape + let winnr = nvim_win_get_number(s:winid) + execute winnr.'wincmd w' + nnoremap :call gitgutter#hunk#close_hunk_preview_window() + wincmd w + endif + " Assumes cursor is in original window. autocmd CursorMoved,TabLeave ++once call gitgutter#hunk#close_hunk_preview_window() - if g:gitgutter_close_preview_on_escape - " Map to close the floating preview. - nnoremap :call gitgutter#hunk#close_hunk_preview_window() - " Ensure that when the preview window is closed, the map is removed. - autocmd User GitGutterPreviewClosed silent! nunmap - autocmd CursorMoved ++once silent! nunmap - execute "autocmd WinClosed doautocmd" s:nomodeline "User GitGutterPreviewClosed" - endif - return endif