slide-transition-defaults-to-half-a-height
Installation
SKILL.md
Half a height is the default, and it looks like a bug
slideInVertically() with no offset lambda does not slide in from off-screen. It slides in from
half its own height — so the element is already halfway to its resting place on the first frame,
and the eye reads the missing half as a jump. The same default sits on the exit.
// adapted — one pair, imported by every screen that has this control
val BarEnter: EnterTransition =
fadeIn(tween(durationMillis = 180, easing = FastOutSlowInEasing)) +
slideInVertically(tween(durationMillis = 260, easing = FastOutSlowInEasing)) { -it }
/** Leaving is quicker than arriving: a control being dismissed should not hold the eye. */
val BarExit: ExitTransition =
fadeOut(tween(durationMillis = 140, easing = FastOutSlowInEasing)) +
slideOutVertically(tween(durationMillis = 200, easing = FastOutSlowInEasing)) { -it }