Repository navigation
fix(app): rise a new pane in without a view transition - #144
Merged
Merged
Conversation
As a view transition ended, WebView2 sometimes painted the header's mascot without its clip for about 70 ms: an orange square. Recorded frame by frame in the installed app, it showed up within seconds of switching chats with the transition and never without it. The new bot's or crew's pane now rises in with a plain opacity and transform animation; the old pane no longer fades out.
httpsphl
enabled auto-merge
October 4, 2026 03:28
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.
Fixes an orange square that flashed for a moment on the header's mascot when switching chats.
Cause
As a view transition ended, WebView2 sometimes painted the header avatar without its clip path for about 70 ms (7 frames), showing the mascot's whole body rect. Recorded frame by frame in the installed app over CDP: with the view transition it showed up within seconds of switching chats, right as the transition finished; with view transitions off, about 30 switches and no square. A plain CSS rise, tried in the same app, showed none either, and the owner saw no flash.
Change
document.startViewTransition. The new bot's, crew's or page's pane rises in with a plain 240 ms opacity and transform animation (.pane-rise, fillbackwardsso nothing stays transformed after it). The old pane no longer fades out for 110 ms.viewTransition()andreducedMotion()are gone; the view transition rules leavemotion.cssandmotion-less.css. Less motion still stills the rise through the global animation rules.Manual test with the real app