feat(app): add animated BusyWave loading indicator - #41350
Draft
Victozee26 wants to merge 6 commits into
Draft
Conversation
Port the TUI's Knight-Rider scanner wave from packages/tui/src/ui/spinner.ts as a SolidJS component. 8 segments sweep bidirectionally with an exponential alpha trail and easeOutCubic vertical scaling, tinted with the active agent color. - packages/ui: BusyWave component, CSS, storybook story, and test - packages/app: TimelineThinkingRow now renders BusyWave instead of TextShimmer - packages/session-ui: same swap in the share-route SessionTurn duplicate
When showReasoningSummaries is enabled, the thinking wave was removed as soon as reasoning parts arrived, making it blink in and out. The wave is a persistent working indicator — show it for the full busy duration. Also removes dead code: assistantVisible memo, partState function, and visible tracking in assistantDerived (session-turn.tsx).
Author
|
sorry it looks laggy my pc was running tests |
- Add glare/brightness boost at trail index 1 matching TUI deriveTrailColors - Switch from rAF to setInterval for jitter-free 25fps frame clock - Transform-origin: center bottom so segments stand on baseline - Initial opacity: 0 prevents one-frame flash before first effect - Cancel interval when paused instead of busy-looping - aria-busy=true on the status container - Bump segment size to 5x14px (was 4x12px) for better visual weight
Victozee26
marked this pull request as draft
August 9, 2026 21:33
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.
Issue for this PR
Closes #
Type of change
What does this PR do?
replace the shimmering 'Thinking' label with a busy wave effect inspired from TUI
it also stay persistent when 'show thinking summaries' is enabled
so it gives better indication of a busy session
also works in subagents sessions
How did you verify your code works?
run :
then in a new terminal
launch the url from the second terminal in browser
Screenshots / recordings
with 'show thinking summaries' ENABLED ( in setting ):
InShot_20260809_021056875.mp4
InShot_20260809_021653082.mp4
with 'show thinking summaries' DISABLED ( in setting ):
InShot_20260809_025629342.mp4
InShot_20260809_025347211.mp4
Checklist