C3.25.1Long-press versus double-tap timingdesignresearch

Long-press lives in hundreds of milliseconds, shorter than the double-tap gap

Aliases: long-press timeout · double-tap interval · nested timeouts

What it is

The default long-press clock sits around 400–600 ms and should be shorter than the double-tap window that waits for a second down on the same hotspot. Holding is continuous contact; double-tap is lift then down. If long-press is only allowed after the double-tap window expires, an intentional hold is first treated as “the second tap is still coming,” and the menu looks broken. The two timeouts must be staggered; this leaf is the direction of that stagger, not the long-press primitive itself.

Why it happens

After down, a recognizer that queues “has not lifted” with “might lift and tap again” lets the double-tap window block long-press. That window is often 300–500 ms; putting long-press later forces a holder to wait out someone else’s second tap. The clean split is: while contact has not lifted, do not reserve a seat for double-tap—double-tap’s gap clock starts after the first lift. Long-press fires on unlifted contact with its own hundreds-of-ms clock, and that clock stays shorter than the double-tap gap so a slow first tap of a double-tap and a short long-press do not share one interval. Hundreds of milliseconds is the band that is still a classification delay rather than an explicit waiting task, and still longer than a sluggish tap.

Studying it

On a hotspot that hosts tap, double-tap, and long-press, sweep the two timeouts against each other. Mix all three intents. Record holds classified as unfinished double-taps, first taps promoted to long-press, and extra delay on single taps. Draw the two-dimensional conflict band; do not report one “best millisecond.” Measure participants’ actual tap rhythm.

Where it stops holding

Ordinary buttons that do not double-tap need not honour a double-tap window; long-press can fire earlier. After assistive tech rewrites double-tap as activation, the app may never see either clock. Stylus double-tap gaps are usually tighter and need retuning. Staggering clocks fixes classification fights, not “how long until waiting is annoying.”

Applying it

  • Time long-press only on unlifted contact; do not require double-tap to fail first. Keep the value in the hundreds of milliseconds and shorter than that view’s double-tap gap.
  • Disable the double-tap recognizer on controls that do not need it.
  • Script lifts or second downs at 200/400/600 ms and check that a hold can show a menu before the double-tap window dies, without a short tap getting the menu first.

Related

  • Same group: C3.25.2 Thresholds may follow settings or recent speed, not a global constant · C3.25.3 Every long-press function needs a non-long-press path · C3.25.4 Shared onset with drag makes the threshold a classification boundary
  • Adjacent: C3.03 Long press · C3.02 Double tap
  • Search: long-press timeout · double-tap interval · nested timeouts

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/C3.25.1