Repository navigation
win32: restyle the standalone tab strip - #14
Merged
shiweis merged 5 commits intoOct 29, 2026
Merged
Conversation
# Conflicts: # CHANGELOG.md
Use actual fitted tab rectangles for drag thresholds and cover remainder widths with deterministic geometry tests. Stage the test executable, console runtime and resources under local Windows temp paths and fail the regression when shutdown requires forced termination.
Copy themes, shell integration, the source terminfo sentinel and console runtime license into the local test payload instead of recursively following the compiled Unix terminfo tree. Remove staging on setup failure.
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.
Restyle the standalone Windows tab strip with equal-width tabs that fill the row, centered Segoe UI titles, theme-derived selection/hover/divider colors, right-side hover close buttons, and a right-edge new-tab button. The native caption remains separate from the tab row.
Use the same close rectangle for painting and hit testing. Drag reordering follows actual tab rectangles, including the remainder pixels distributed across fitted tabs. Two geometry regressions cover fitted/overflow layouts and all 64 nonuniform drag thresholds.
Native Windows verification passed 21 checks across dark opaque, opacity 0.8, and light fixtures: independent PTY input, tab switching, mouse hit targets, creation/closing, persistent titles, normal shutdown, and successful exit status. The test stages the executable, matching console runtime, and portable resources under a local Windows temporary directory. It validates owned HWNDs and uses no global input or foreground requests.
Existing tab-overview and visibility regressions also passed (12 and 18 assertions). Captures validate the GDI tab strip; they do not establish OpenGL compositing behavior. Minimum-width overflow and cross-monitor DPI handling remain existing limitations.
Native test:
Visual reference captures (the painting style is unchanged by the drag-geometry/test corrections):
Before:

Dark:

Light:
