Skip to content

Animate background colors on the host frame clock #533

Closed

Description

@wieslawsoltes

Parent: #242. CSS epic: #235. Release epic: #227.

Proven gap

Unchanged Code OSS authors background-color and background transitions across editor, status, toggle, toolbar, Chat, and session surfaces. WebScene advances foreground color, opacity, transform, and positional transitions, but background paint jumps directly to its target and does not keep frame demand active.

Focused implementation

  • Canonicalize transition-property: background to background-color for the supported color subset.
  • Store cold per-node background timing plus painted/target RGBA.
  • Resolve fixed and currentColor targets and interpolate from host timestamps.
  • Expose temporal RGBA through computed style and retained scene paint.
  • Reuse transition run/start/cancel/end semantics and cancel on property removal.
  • Include active background transitions in frame demand while keeping the path paint-only and layout-clean.
  • Preserve existing detach/display-none lifecycle and idle filtering.
  • Extend native and browser temporal contracts for aliasing, midpoint, reversal, final value, events, bounded samples, and post-completion idle demand.

Acceptance and deferred gates

  • Implementation rebased on WebScene main a5131262914c29bc94a8755b3a6ae2d14479488f.
  • Focused regression sources authored.
  • git diff --check passed.
  • Execute Chromium/native pixels and transition contracts.
  • Run performance, allocation, lifecycle, idle-publication, exact Code OSS, and package gates.

Broader animated paint properties and full CSS Animations/WAAPI remain outside this slice.

Activity

  1. wieslawsoltes commented on Sep 19, 2026

    @wieslawsoltes
    CollaboratorAuthor

    Completed by #534 and merged to WebScene main as 987b843076035ae86a6cb4279054ebdef79b0375. background/background-color now progress on the host clock through computed style and retained paint, with lifecycle/cancellation and idle cleanup. Only git diff --check ran; parent #242 retains filter interpolation and cumulative execution gates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    vscode-oss/plannedPlanned for the AppScene/WebScene VS Code OSS integration

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions