neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 5b1b46ea5a4f5412a59c8295ed5b7f6454d1b532
parent b4c092a0927cff3e57374cd6953e31675b83a0d1
Author: glepnir <glephunter@gmail.com>
Date:   Wed,  6 Aug 2025 21:25:55 +0800

fix(lsp): show title when global winborder is set (#35181)

Problem: make_floating_popup_options only shows when opts.border is explicitly set, ignoring global winborder setting

Solution: check both opts.border and vim.o.winborder when determining whether to show title
Diffstat:
Mruntime/lua/vim/lsp/util.lua | 2+-
Mtest/functional/plugin/lsp/utils_spec.lua | 8++++++++
2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/runtime/lua/vim/lsp/util.lua b/runtime/lua/vim/lsp/util.lua @@ -942,7 +942,7 @@ function M.make_floating_popup_options(width, height, opts) col = 1 end - local title = (opts.border and opts.title) and opts.title or nil + local title = ((opts.border or vim.o.winborder ~= '') and opts.title) and opts.title or nil local title_pos --- @type 'left'|'center'|'right'? if title then diff --git a/test/functional/plugin/lsp/utils_spec.lua b/test/functional/plugin/lsp/utils_spec.lua @@ -267,6 +267,14 @@ describe('vim.lsp.util', function() eq(56, opts.height) end) + + it('title with winborder option #35179', function() + local opts = exec_lua(function() + vim.o.winborder = 'single' + return vim.lsp.util.make_floating_popup_options(100, 100, { title = 'Title' }) + end) + eq('Title', opts.title) + end) end) end)