microsoft / microsoft/terminal

Use a Clip rect for Pane animations instead of the Width/Height

Open
#7,436 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area-UserInterface Help Wanted Issue-Task Priority-3 Product-Terminal
Dominant language
C++
Stars
105k
Forks
9.6k
Avg merge
3d 17h
Merged PRs (30d)
29

Description

follow up from #7364

Looking at this doc:

An animation is independent if it has any of these characteristics:

  • The Duration of the animation is 0 seconds (see Warning)
  • The animation targets UIElement.Opacity
  • The animation targets a sub-property value of these UIElement properties: Transform3D, RenderTransform, Projection, Clip
  • The animation targets Canvas.Left or Canvas.Top
  • The animation targets a Brush value and uses a SolidColorBrush, animating its Color
  • The animation is an ObjectAnimationUsingKeyFrames

emph added

Right now we're stuck being a dependent animation, because we're animating the Width or Height. But we might be able to use Clip to achieve the same effect.

I'm no XAML wizard, so that'll require another day of learning to figure out, but I figured I'd write these notes down before I forgot.

Might even be able to get us #7365 for free.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the follow-up context in #7364 and the linked Microsoft storyboard-animation documentation first. Locate the Pane animation entry point and compare the current Width/Height approach with a Clip-based approach. Done means the animation uses a Clip rect instead and may also address #7365.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.