Repository navigation
feat(terminal): support auto, hover and always scrollbars - #447
Open
WilliamWang1721 wants to merge 7 commits into
Open
WilliamWang1721 wants to merge 7 commits into
WilliamWang1721 wants to merge 7 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Result / 用户结果
Closes #425. Terminal appearance now offers Auto-hide / On hover / Always for the overlay scrollbar. Auto remains the default; Hover uses the existing right-edge hit band; Always stays grabbable at live bottom. Every mode hides when there is no history, and an active drag retains visual feedback until release.
Design / 设计边界
Shared settings own
scrollbar_visibility=auto|hover|always, parsing and reset. Existing dropdown/localization and Settings hot application update open terminals. Rendering and input share the visible thumb and hit bounds, so hidden bars do not intercept selection or TUI input. The minimum 24px thumb now uses the same travel range for painting and drag inversion, avoiding a jump when grabbed at live bottom. No new dependencies or reserved grid width.Evidence / 验证依据
Final head
81bf4f361cba840a6f3d09894ca76c3ed2041ad2: architecture, lint, PR size and all required reports passed. Upstream validation executed Linux, Windows x64 and Windows ARM64. This is automated native-suite evidence; platform/device UI limits below still apply.Confirmed current main returned no scrollbar at offset zero and had no visibility setting. Added persistence/reset, real dropdown/reopen, pointer hover/leave, hidden selection, no-history TUI input, live/top/bottom dragging with a minimum-size thumb, and outside-release regressions. Two self-review passes completed.
All execution is through GitHub Actions; no local tests/builds/format/architecture checks ran. Final-head PR CI passed. The fork macOS native UI job passed on exact head
81bf4f361cba840a6f3d09894ca76c3ed2041ad2. Real CoreGraphics move/down/up opened both the existing Font ligatures dropdown and the new scrollbar dropdown; Up/Enter selected On hover and persisted it. Always/away/inside/leave screenshots were visually reviewed: the right-edge region[956,110,44,567]changed by 570/572/0 pixels. Window: 984×667 on a 1024×768, 1× hosted display. Artifact:native-ui-pr-447-81bf4f361cba840a6f3d09894ca76c3ed2041ad2. Earlier automation clicks did not reliably open either native menu; those failed captures were harness evidence, not a product-hover failure. Windows UI and manual high-DPI/device acceptance remain unverified.AI implementation/review: GPT-6.1 SOL sub-agents; coordinator model and reasoning efforts unverified.
Required Review / 必须确认