Repository navigation
Upgrade to gpui-base 0.8.0 and adopt its scroll, resizable, input and webview defaults - #922
Merged
Merged
Conversation
Move gpui-fast to 0.1.10, rename gpui-wry to gpui-webview, and select gpui-kit gpui-fast for native preview. Align Web wasm-bindgen pins and CLI with wgpu 30 requirements.
Remove Tcode's wheel-notch interceptor so ScrollBounce owns page input. Keep bounded areas masked and use GPUI handles directly. Exercise timeline bounce with overflowing content at both edges. The paging test stalled by starting new gestures against a displaced edge without advancing its clock; settle pending display frames between gestures while retaining the paging and tail-position assertions.
Register edge-back capture before the content so gpui-base 0.8's ScrollBounce cannot consume the zero-delta release before the gesture owner resets its sheet target. Deliver the host session-status response for the composer test's final destination switches. The test previously relied on incidental cursor notifications; reverting only BlinkCursor::start to its 0.7.3 behavior confirmed the upstream change that exposed the missing test-driver event. Keep all draft, IME, undo/redo and sheet-rest assertions unchanged.
Owner
Author
|
Final acceptance run on the integrated branch (macOS host):
|
1 task
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.
Summary
Upgrade to gpui-base 0.8.0 (gpui-fast 0.1.10, gpui-wry → gpui-webview 0.8.0) and adopt what 0.8.0 now provides, per principle 6: upstream defaults are used as they are, and Tcode's own primitives that 0.8.0 closes are removed.
Scroll behaviour now follows gpui-base: page viewports bounce on macOS with NSScrollView tuning, ScrollBounce owns wheel input, mouse-wheel notches are no longer eased, and nested bounce areas do not chain to their parent at the edge. Masked areas (
Scrollable,ScrollArea,VirtualList) and horizontal strips keep their composition.Two failures the upgrade exposed were Tcode's: the edge-back capture canvas was registered after the palette's ScrollBounce, which now consumes the release packet; and a hidden right panel occupied an unmeasured slot in the resizable group, which broke sidebar drags. Both are fixed here.
Evidence
cargo nextest run --workspacehad 3 failing tests and 1 stalled test (timeline bounce, composer destination draft, edge-swipe sheet, paging stall).After:
cargo fmt --check,cargo clippy --workspace --all-targets --locked -D warnings,cargo machete, iOS / Android / Webcheckwith-D warnings, and the full workspace suite pass (see the comment below for the final run).--preview-smokepasses; numeric controls read their labels in the accessibility tree.Merge Danger
Door: two-way
Revert restores 0.7.3 and the removed code; no data or wire changes.
Blast Radius: scrolling
Every scroll surface changes feel on macOS (bounce on, no notch easing, inner areas keep the gesture at their ends); textareas keep the wheel once they overflow. Windows and Linux are not bounce platforms but also lose notch easing. iOS/Android only see the dependency bump.