fix(lsp): open_floating_preview() ignores max_height (#32716)

Problem:  After 47aaddfa the max_height option is no longer respected.
          Hover documentation and Signature help windows take up the
          entire text height.
Solution: Compare to window's current height and only modify the height
          if it would reduce the height, not enlarge it.
This commit is contained in:
Robert Muir
2025-03-04 13:36:57 -05:00
committed by GitHub
parent fb842dfc22
commit 7d5866d471
2 changed files with 27 additions and 1 deletions

View File

@@ -383,4 +383,28 @@ describe('vim.lsp.util', function()
|
]])
end)
it('open_floating_preview height does not exceed max_height', function()
local screen = Screen.new()
exec_lua([[
vim.lsp.util.open_floating_preview(vim.fn.range(1, 10), 'markdown', {
border = 'single',
width = 5,
max_height = 5,
focus = false,
})
]])
screen:expect([[
^ |
┌─────┐{1: }|
│{4:1 }│{1: }|
│{4:2 }│{1: }|
│{4:3 }│{1: }|
│{4:4 }│{1: }|
│{4:5 }│{1: }|
└─────┘{1: }|
{1:~ }|*5
|
]])
end)
end)