Repository navigation
Conversation
2 tasks done
Owner
Author
|
Superseded by pingdotgg#12871 — the implementation PR now lives upstream against |
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.
What Changed
Some programmatic scroll routes still animated when reduced motion was enabled: theme token reveal, timeline minimap and send anchors, scroll-to-bottom, keyboard page steps, and native message-to-end actions. These routes now read the current preference at the action boundary. Existing settings, tabs and citation behavior share the same small web helper.
Why
This implements the programmatic-scroll portion of the proposed reduced-motion invariant. Dependency inspection confirmed Legend forwards the animated flag; Pierre and Reanimated already honor their supported defaults, so those behaviors remain intact. Direct manipulation, held scrolling and keyboard dismissal retain their existing behavior. This does not claim all app motion was runtime-verified.
Stacked on
docs/consistency-reduced-motionin the fork, independently of other invariant pairs.Validation
devin -p --model swe-2-maxagainst the frozen diff and coding standard. It produced no review output for over 600 seconds; the manager stopped its captured process (exit 1). No completed independent review or findings are claimed.UI Changes
Runtime proof (2026-09-20, isolated proof app; base d6f2913 vs this branch): with
matchMediastubbed to report prefers-reduced-motion, PageDown on the message timeline glides ~130 ms on base; on this branch it lands in a single frame (scrollTop sampled over time).Before: https://github.com/user-attachments/assets/edc47833-6724-4437-8866-4a40b4a25e92
After: https://github.com/user-attachments/assets/0ca1dd0d-d8a3-41fe-9efc-bf3a2d2b1be2
Context: https://github.com/user-attachments/assets/22220954-f3a8-4663-93f1-6796e05938eb
Native scroll/accessibility paths were verified by focused tests only — T3 Device tools are unavailable in this environment.
Checklist
Implemented by GPT-6 Astra (medium reasoning) in Codex; independent SWE-2 Max review attempt in Devin CLI timed out without a verdict.
Native verification limitation: T3 Device tools are unavailable. No native automation fallback or native build was started; native scrolling, preference changes, and motion/accessibility proof remain unverified. Isolated server setup remains authorized if a supported verification route becomes available.