Respond on pointer-down

Show feedback the instant a control is pressed; cut other delays.

From apple-design, §1 Response.

Highlight on press

Press and hold each button, then let go.

On click + timerBad

–

click → setTimeout(…, 300)
On :activeGood

–

:active { transform: scale(0.97) }

Where directness falls off

Raise the latency and press the pad after each change.

Injected latencyInstant

–

setTimeout(highlight, 0)

Echo keys, debounce work

Type below. Only the left list waits.

DebouncedBad
    debounce(render, 500)–
    On inputGood
      input → render–

      Why it matters, pros and cons

      Why it matters

      A press asks “did that land?” The highlight answers; any lag breaks the touch.

      Pros

      • Control feels attached to the finger.
      • Slide off to cancel still works.
      • One :active rule, compositor only.

      Cons

      • Never commit on pointer-down; commit on release.
      • Debounce network calls, never the local echo.
      • Scrolling rows may need a short highlight delay.