Skip to content

feat(ui): add scrollbar & dynamic border support - #23

Open
AtifChy wants to merge 11 commits into
patrickpichler:mainfrom
AtifChy:feat/scrollbar
Open

AtifChy wants to merge 11 commits into
patrickpichler:mainfrom
AtifChy:feat/scrollbar

Conversation

@AtifChy

@AtifChy AtifChy commented Sep 6, 2026

Copy link
Copy Markdown

Adds floating scrollbar support for hover popups with dynamic geometry calculation, smoother scrolling, and a full test suite.

Highlights

  • Scrollbar: Spawns a 1-column float cleanly layered over the right border or edge, styled via FloatBorder (track) and PmenuThumb (thumb).
  • Border: Added support for dynamic scrollbar based on border set by vim.o.winborder
  • Tests: Added tests for scrollbar and border.

@AtifChy
AtifChy marked this pull request as draft September 6, 2026 18:06
@AtifChy
AtifChy marked this pull request as ready for review September 6, 2026 18:55
@AtifChy AtifChy changed the title feat(ui): add scrollbar support feat(ui): add scrollbar & dynamic border support Sep 6, 2026
@AtifChy

AtifChy commented Sep 6, 2026

Copy link
Copy Markdown
Author

@patrickpichler This PR has gotten pretty big. Can you please check it out and give me feedback on it?

@AtifChy

AtifChy commented Sep 6, 2026

Copy link
Copy Markdown
Author

fixes #19 #22

Comment thread lua/hovercraft/ui.lua
Comment on lines +571 to +573
elseif type(lines) == 'table' and not lines.kind then
-- Handle providers that return an array of strings
table.insert(lines, ' ')

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part is responsible for fixing #19 #22

@patrickpichler

Copy link
Copy Markdown
Owner

Thank you for the PR @AtifChy! I will have a look.

Regarding the fix for #22, I already have a commit lined up (there will be a few fixes incoming). So just as a heads up, there are some small changes incoming 😅

@AtifChy
AtifChy force-pushed the feat/scrollbar branch 2 times, most recently from 986ae6a to b1e73a9 Compare September 8, 2026 18:08
Preserve the original `winnr` config when reconfiguring the window, changing only the necessary options to prevent unintended side effects.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants