Skip to content

fix(settings): keep the SSH host list's scrolling inside the list (#1221) - #1222

Merged
l0ng-ai merged 1 commit into
mainfrom
fix/1221-ssh-list-scroll
Oct 24, 2026
Merged

l0ng-ai merged 1 commit into
mainfrom
fix/1221-ssh-list-scroll

Conversation

@l0ng-ai

@l0ng-ai l0ng-ai commented Oct 24, 2026

Copy link
Copy Markdown
Owner

Fixes #1221.

Settings → SSH bounds the host list to 360px when Show all is on or a search is active. That list sits inside the settings page, which also scrolls, and GPUI scrolls every scroller under the pointer. So the wheel moved the page along with the list.

#1214 fixed the same problem on the Agents page. This moves that wheel handler into a shared nested_list_wheel and gives the SSH list the same structure: a scrolling viewport that tracks a new ssh_list_scroll handle, with the handler on its content child.

  • A wheel event the list can absorb stays in the list.
  • Only an event that starts at the list's top or bottom edge reaches the page.

The Agents page behaves as before.

Test

  • New ssh_host_list_scroll_stays_inside_the_list: 40 hosts with Show all on. Scrolling mid-list leaves the page where it was. Once the list is at its end, the next wheel event scrolls the page. Without the fix it fails: the page moves from -30px to -60px.
  • cargo test --bin tty7-app -- ui::settings: 57 passed. This includes fix(settings): hand off nested scrolling only at list boundaries #1214's Agents test.

)

Show all and search bound the host list to 360px inside the scrolling settings page, and GPUI scrolls every scroller under the pointer, so the wheel moved the page along with the list. Give the list the same wheel handler the Agents page got in #1214, now shared as nested_list_wheel: an event the list can absorb stays in the list, and only one that starts at its edge reaches the page.
@l0ng-ai
l0ng-ai merged commit 2d21c55 into main Oct 24, 2026
15 checks passed
@l0ng-ai
l0ng-ai deleted the fix/1221-ssh-list-scroll branch October 24, 2026 10:28
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.

设置中的SSH主机列表滚动问题

1 participant