fix(ui): close floating window on BufLeave event (#16557)

When buffer is visible in two splits simultaneously, BufHidden event is
not triggered, causing the floating window to remain on screen after
switching to another buffer.

Remove BufHidden event from close_events defaults, and close the window
if we changed the buffer to something other than the buffer that spawned
the floating window or the floating window buffer itself.
This commit is contained in:
ii14
2021-12-15 15:53:09 +01:00
committed by GitHub
parent 5ba45a7cd6
commit 576408ddde
2 changed files with 46 additions and 18 deletions

View File

@@ -1377,18 +1377,6 @@ character_offset({bufnr}, {row}, {col})
(number, number) UTF-32 and UTF-16 index of the character
in line {row} column {col} in buffer {buf}
*vim.lsp.util.close_preview_autocmd()*
close_preview_autocmd({events}, {winnr})
Creates autocommands to close a preview window when events
happen.
Parameters: ~
{events} (table) list of events
{winnr} (number) window id of preview window
See also: ~
|autocmd-events|
*vim.lsp.util.convert_input_to_markdown_lines()*
convert_input_to_markdown_lines({input}, {contents})
Converts any of `MarkedString` | `MarkedString[]` |