Skip to content

Commit

Permalink
fix(ui): when closing details, jump to plugin header. Closes #1338
Browse files Browse the repository at this point in the history
  • Loading branch information
folke committed Jun 29, 2024
1 parent 5bddef2 commit 3772914
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 1 deletion.
12 changes: 11 additions & 1 deletion lua/lazy/view/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,17 @@ function M.create()
name = plugin.name,
kind = plugin._.kind,
}
self.state.plugin = not vim.deep_equal(self.state.plugin, selected) and selected or nil

local open = not vim.deep_equal(self.state.plugin, selected)

if not open then
local row = self.render:get_row(selected)
if row then
vim.api.nvim_win_set_cursor(self.view.win, { row, 8 })
end
end

self.state.plugin = open and selected or nil
self:update()
end
end)
Expand Down
9 changes: 9 additions & 0 deletions lua/lazy/view/render.lua
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,15 @@ function M:get_plugin(row)
end
end

---@param selected {name:string, kind?: LazyPluginKind}
function M:get_row(selected)
for _, loc in ipairs(self.locations) do
if loc.kind == selected.kind and loc.name == selected.name then
return loc.from
end
end
end

function M:title()
self:nl()
local modes = vim.tbl_filter(function(c)
Expand Down

0 comments on commit 3772914

Please sign in to comment.