DroppyAnimation

Droppy's named animation presets.

enum DroppyAnimation

Droppy's named animation presets. Read these on the UI thread.

Type properties

bounce

static var bounce: Animation { get }

Icon bounce: playful success feedback.

controlMorph

static var controlMorph: Animation { get }

In-place control width and shape morphs (search field expand and similar).

drag

static var drag: Animation { get }

Drag tracking, follows the pointer precisely.

hover

static var hover: Animation { get }

Standard hover animation. Every hover-driven change (buttons, cards, list items) settles on this snappy clock.

hoverQuick

static var hoverQuick: Animation { get }

Quick hover animation: instant feedback, no bounce. For small indicators and icons. Also the clock every native button animates its pressed state on.

hoverScale

static var hoverScale: Animation { get }

Buttery hover scale. For "ready to expand" preview feedback.

listChange

static var listChange: Animation { get }

List reordering, filtering, insertion, and removal.

notchClose

static var notchClose: Animation { get }

The spring Droppy closes a notch surface on (DroppyKit 1.8.0): the shelf, and a card folding back up into the notch.

Hosted, this is the host's current shelfSurfaceClose read through DroppyKitMotionBridge. Standalone it uses the host's Regular-shelf values: response 0.54, damping 0.90, so the surface does not bounce away from a dismissal.

notchOpen

static var notchOpen: Animation { get }

The spring Droppy opens a notch surface on: the shelf, a HUD strip growing into its card, and compact content unfolding back out of the notch (DroppyKit 1.8.0).

Hosted, this is the host's current shelfSurfaceOpen read through DroppyKitMotionBridge. Standalone it uses the host's values at the Regular shelf size (response 0.47, damping 0.76), display-tuned like every preset here; Reduce Motion settles critically damped on a short response, as the host does. DroppyTransition rides it; reach for it directly only when your own content has to land on the shell's clock.

panelSlide

static var panelSlide: Animation { get }

Panel slide inside a window (sidebar collapse and expand).

press

static var press: Animation { get }

Press feedback, immediate response.

pressSettle

static var pressSettle: Animation { get }

Two-phase press, phase 2: slower settle on release.

pressSnap

static var pressSnap: Animation { get }

Two-phase press, phase 1: quick snap on press down.

release

static var release: Animation { get }

Release feedback, natural bounce back.

scaleHover

static var scaleHover: Animation { get }

Small hover scale for cards, the host's scaleHover.

segmentedSelection

static var segmentedSelection: Animation { get }

Subtle grouped-button selection transition for settings tiles and segmented rows.

state

static var state: Animation { get }

Standard state change: toggles, selection changes, mode switches, structural reveals.

Uses the host's current state through DroppyKitMotionBridge. Standalone previews use the reference smooth 0.27-second cross-fade, adjusted for the display. Like the host, it carries no bounce.

stateEmphasis

static var stateEmphasis: Animation { get }

Emphasized state change: favorites, flags, important switches.

tabSelect

static var tabSelect: Animation { get }

Tab and segment selection slide.

transition

static var transition: Animation { get }

View entrance and exit: sheets, popovers, panels.

Type methods

notchPressDown(for:)

static func notchPressDown(for screen: NSScreen? = nil) -> Animation

The spring the host drives the collapsed notch's press-down grow on (DroppyKit 0.4.2). Pair with notchPressRelease(for:), resolving the direction at change time: the host picks the down spring while the press is held and the release spring on let-go, so each direction gets its own curve. Slow enough that the growth visibly travels, instant enough to feel 1:1 with the pointer.

notchPressRelease(for:)

static func notchPressRelease(for screen: NSScreen? = nil) -> Animation

The settle-back spring on release or press-cancel (DroppyKit 0.4.2). Softer damping than the press so the surface relaxes back with a hint of elasticity instead of snapping.