Motion topic

Motion

Springs written as Apple writes them (a duration and a bounce): SheenMotion.press, snappy, smooth, gentle, celebrate. SheenPressable gives every tap a 120 ms press; SheenEntrance brings content in once; SheenRollingDigits rolls changing numbers. With Reduce Motion everything fades instead.

Classes

SheenEntrance Motion
A piece that arrives once, when it is first built (a screen's first content, results, a success view): after delay it fades in, rises rise points into place and grows from scaleFrom, on spring. Only opacity and transform move, so glass keeps its blur. It takes taps, and VoiceOver reads it, from its first frame: an entrance never makes anyone wait.
SheenMotion Motion
The springs and timings of sheen, written the way Apple writes them: a perceptual duration and a bounce.
SheenMotionScope Motion
Rebuilds everything that asked SheenMotion.reduced when the person turns Reduce Motion on or off while the app runs. SheenScope places one for you.
SheenPhotoHero Motion
The photo you tapped becomes the next page's photo (like iOS's zoom transition): give the card's photo and the page's photo the same tag. In flight the card's photo shows (it is already loaded), its corners turning from the card's radius into the page's. With Reduce Motion there is no flight: the page changes as its route does.
SheenPressable Motion
Press feedback for anything tappable: 120 ms down to 0.97, then back on the press spring, so a tap answers within the 100 ms people perceive as instant.
SheenRollingDigits Motion
Text whose changed digits roll, like iOS numeric text: the new digit rises into place while the old one leaves upward; unchanged characters stay still.