Skip to content

feat(app): smooth animated transitions for Work Column collapse/restore (#1434) #1610

Open

Description

@jacktrnr

Important

Problem — The Chat panel collapse and restore is a hard jump (display: none / visible). It feels jarring and unfinished. Good split-pane UIs (VS Code sidebar, Figma layers panel, Linear) animate the width transition over ~200ms with an easing curve so the user can see what is happening.

Approach — Replace the !hidden (display: none) collapse with an animated width transition. When collapsing: animate Chat width from current → 0 over 200ms with ease-out, then set display: none after the transition completes (to avoid layout cost). When restoring: set display: flex, then animate width from 0 → target over 200ms with ease-out. The Work Column already has a transition-[width] class — extend it to cover the collapse/restore case.

Scope — In: CSS width transition for collapse/restore, transition-end cleanup. Out: drag-snap animation (separate issue), spring physics.

Acceptance Criteria

  • Collapsing the Chat panel animates the width from current to 0 over ~200ms
  • Restoring the Chat panel animates the width from 0 to the previous width over ~200ms
  • The animation uses an easing curve (not linear) — ease-out or the existing cubic-bezier(0.22,1,0.36,1)
  • No layout shift or flash during the transition
  • The transition does not fire during manual drag (only on button click, keyboard shortcut, or double-click snap)

Reference

VS Code's sidebar collapse: animates width over ~150ms with ease-out. The sidebar content fades in on restore. Figma's layers panel: similar animated slide. Both avoid display: none during the animation.

Source

Sub-issue of #1434. Part of #1430.

Activity

  1. self-assigned this
    on Sep 28, 2026
  2. aarontrowbridge commented on Oct 29, 2026

    @aarontrowbridge
    Contributor

    Blocked on PR #1548 (Chat collapse and flexible split), which is deferred until after 0.4.0. This builds on it, so it's marked hitl to keep the night runner off it until #1548 lands. (0.4.0 cleanup)

  3. added
    0.4.0targeted for the 0.4.0 release
    post-v2v1 overlay feature/engine work deferred until the opencode v2 port (amicode-host)
    and removed
    afk-readytriaged clearable by notturno
    0.4.0targeted for the 0.4.0 release
    on Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requesthitlNeeds human review before mergepost-v2v1 overlay feature/engine work deferred until the opencode v2 port (amicode-host)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions