MunifTanjim / nui.nvim

UI Component Library for Neovim.
MIT License
1.62k stars 57 forks source link

Invalid Window ID #357

Closed AdamDunmore closed 5 months ago

AdamDunmore commented 6 months ago

Error Error executing vim.schedule lua callback: vim/_editor.lua:0: nvim_exec2(): Vim(call):E5555: API call: Invalid window id: 1002 stack traceback: [C]: in function 'nvim_exec2' vim/_editor.lua: in function 'cmd' .../.local/share/nvim/lazy/nui.nvim/lua/nui/layout/init.lua:43: in function <.../.local/share/nvim/lazy/nui.nvim/lua/nui/layout/init.lua:42>

Code local Popup = require("nui.popup") local Layout = require("nui.layout") local event = require("nui.utils.autocmd").event

local popupHelp = Popup({ enter = false, focusable = false, border = { style = "rounded", text = { top = "Binding Help" } }, position = "50%", size = { width = "80%", height = "60%" }, })

local layout = Layout( { position = "50%", size = { width = "80%", height = "60%" } }, Layout.Box({ Layout.Box(popupHelp, {size = "100%"}) }) )

local help_open = false

local function Toggle_Help() if help_open then layout:hide();
elseif not help_open then layout:show() end help_open = not help_open end

layout:mount() layout:hide()

vim.keymap.set({'n', 'i', 'v'}, '', Toggle_Help, { noremap = false })`

When I remove layout:hide() the error goes away (the same applies for if layout:unmount is present). If I remove layout:hide() but use the Toggle_Help function the error is not present

MunifTanjim commented 5 months ago

should be fixed now