Add default-off experimental window animations - #1848
Closed
kiteretsu903 wants to merge 2 commits into
Closed
Conversation
Owner
|
I've been thinking about adding this for a while, and I'm interested in merging this. Is there a reason that you have closed this pull request? |
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.
Adds Animate windows (experimental) to Snap Areas preferences, off by default. When enabled, same-display window actions transition over 300 ms, and dragging a snapped window away restores its size over 180 ms. Keyboard Restore also uses the transition when the saved frame is on the same display.
Related to #1465.
The implementation interpolates position and size using elapsed time and a critically damped curve with a longer settling tail, with up to 60 updates per second through Accessibility. Missed ticks are skipped. Repeated shortcuts retarget from the displayed frame while retaining the logical destination for cycling and restore history. Existing window movers perform the final correction and readback. Refused AX writes end interpolation and fall back to that correction path.
The existing Enhanced UI policy spans the transition and is restored on completion or cancellation. Reduce Motion, VoiceOver, and Switch Control bypass animation. A manual grab finishes an in-progress transition even when drag-to-snap is disabled. The preference is included in configuration import/export, with English, Simplified Chinese, Traditional Chinese, and Japanese labels.
Initial scope: cross-display window actions, fixed-size window handling, cooperative corner adjustments, and bulk tiling/cascading retain their existing behavior. Target applications can still impose minimum sizes or respond slowly, so this remains experimental.
Validation: