Skip to content

Explorer not redrawing after closing parent node #2928

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
LucasMRC opened this issue Sep 24, 2024 · 0 comments · Fixed by #2929
Closed

Explorer not redrawing after closing parent node #2928

LucasMRC opened this issue Sep 24, 2024 · 0 comments · Fixed by #2929
Labels
bug Something isn't working

Comments

@LucasMRC
Copy link
Contributor

LucasMRC commented Sep 24, 2024

Description

When I close the parent node with backspace, the tree does not redraw, so the parent node still appears as opened. It updates when another action triggers the redraw, but until then the tree rendered is out of sync with the actual state.
This seems to be happening after this commit 3 days ago, where this line is evaluating to nil.

nvim-tree.mp4

What you are seeing in the video:

  • I open the plugin directory
  • I close it with the 'close parent node' mapping. The tree looks the same, but you can see the cursor position change.
  • I open another directory triggering the redraw
  • The plugin directory closes.
  • I repeat the first two steps.
  • I open copilot plugin file.
  • It opens a completely different file.

Neovim version

NVIM v0.10.1
Build type: RelWithDebInfo
LuaJIT 2.1.1725453128

Operating system and version

Arch linux - Linux 6.6.52-1-lts x86_64

Windows variant

No response

nvim-tree version

8405ecf

Clean room replication

vim.g.loaded_netrw = 1
vim.g.loaded_netrwPlugin = 1

vim.cmd [[set runtimepath=$VIMRUNTIME]]
vim.cmd [[set packpath=/tmp/nvt-min/site]]
local package_root = "/tmp/nvt-min/site/pack"
local install_path = package_root .. "/packer/start/packer.nvim"
local function load_plugins()
  require("packer").startup {
    {
      "wbthomason/packer.nvim",
      "nvim-tree/nvim-tree.lua",
      "nvim-tree/nvim-web-devicons",
      -- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
    },
    config = {
      package_root = package_root,
      compile_path = install_path .. "/plugin/packer_compiled.lua",
      display = { non_interactive = true },
    },
  }
end
if vim.fn.isdirectory(install_path) == 0 then
  print "Installing nvim-tree and dependencies."
  vim.fn.system { "git", "clone", "--depth=1", "https://github.com/wbthomason/packer.nvim", install_path }
end
load_plugins()
require("packer").sync()
vim.cmd [[autocmd User PackerComplete ++once echo "Ready!" | lua setup()]]
vim.opt.termguicolors = true
vim.opt.cursorline = true

-- MODIFY NVIM-TREE SETTINGS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
_G.setup = function()
  require("nvim-tree").setup {}
end

-- UNCOMMENT this block for diagnostics issues, substituting pattern and cmd as appropriate.
-- Requires diagnostics.enable = true in setup.
--[[
vim.api.nvim_create_autocmd("FileType", {
  pattern = "lua",
  callback = function()
    vim.lsp.start { cmd = { "lua-language-server" } }
  end,
})
]]

Steps to reproduce

  1. nvim -nu /tmp/nvt-min.lua
  2. NvimTreeOpen
  3. Open directory node
  4. Close using the 'close parent node' mapping

Expected behavior

Tree should redraw after closing parent node

Actual behavior

Tree is not redrawing

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant