fix(desktop): sync agent tab motion and optimistic huddle leave update - #3288
Open
westwol wants to merge 1 commit into
Open
fix(desktop): sync agent tab motion and optimistic huddle leave update#3288westwol wants to merge 1 commit into
westwol wants to merge 1 commit into
Conversation
The AI-configuration tabs in the create-agent dialog ran the sliding pill and its labels on different clocks: the pill used duration-[250ms] ease-out while the triggers specified a bare transition-colors, which falls back to Tailwind's 150ms default and cubic-bezier(0.4, 0, 0.2, 1). The label finished recoloring ~100ms before the pill arrived beneath it, on a different curve. Share one motion token between both halves and add the motion-reduce guard used elsewhere in the app. The section below those tabs also swapped instantly while the pill slid, collapsing ~150-200px of height in one frame. Key it on the mode so the incoming fields fade in at the same duration and easing instead of snapping. Leaving a huddle awaited the full teardown -- AudioWorklet stop, mic track stop, and the Rust leave_huddle round-trip -- before closing the drawer, which read as an unresponsive click. Close it up front and roll back to the previous state if cleanup reports failure. locallyLeavingChannelRef already suppresses in-flight "still active" states for the channel being left, so nothing reopens the drawer behind the optimistic close. Signed-off-by: Marcos Lopez <burnarg_24@hotmail.com>
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.
The AI-configuration tabs in the create-agent dialog ran the sliding pill and its labels on different clocks: the pill used duration-[250ms] ease-out while the triggers specified a bare transition-colors, which falls back to Tailwind's 150ms default and cubic-bezier(0.4, 0, 0.2, 1). The label finished recoloring ~100ms before the pill arrived beneath it, on a different curve. Share one motion token between both halves and add the motion-reduce guard used elsewhere in the app.
The section below those tabs also swapped instantly while the pill slid, collapsing ~150-200px of height in one frame. Key it on the mode so the incoming fields fade in at the same duration and easing instead of snapping.
Leaving a huddle awaited the full teardown -- AudioWorklet stop, mic track stop, and the Rust leave_huddle round-trip -- before closing the drawer, which read as an unresponsive click. Close it up front and roll back to the previous state if cleanup reports failure. locallyLeavingChannelRef already suppresses in-flight "still active" states for the channel being left, so nothing reopens the drawer behind the optimistic close.
Summary
Create Agentmodal.Related issue
Testing
Create Agent modal tab switching anim fix
Before:
Screen.Recording.2026-07-28.at.3.27.41.a.m.mov
After:
Screen.Recording.2026-07-28.at.3.15.10.a.m.mov
Leave huddle optimistic update
Before:
Screen.Recording.2026-07-28.at.3.24.45.a.m.mov
After:
Screen.Recording.2026-07-28.at.3.15.32.a.m.mov