System gestures outrank in-app gestures
Aliases: gesture arbitration · cancelled touch · system gesture priority · gesture conflict
What it is
When the system and an app both claim the same swipe, system gesture precedence wins: Home, app switching, Back, and Control Center must be reachable above any app. The app recognizer is cancelled, or never sees a complete path. That is an arbitration rule, not a geometric account of who owns the edge band, and not the history of how edge-to-edge displays thickened the occupied zone. A stroke on a canvas, a carousel’s next page, a custom back—if they share a shape with a system gesture, the app loses. This entry is only about priority. It is not about how an edge hot-zone truncates a path, and not about how many millimetres the Home button’s removal added to the occupied band.
Why it happens
The OS must guarantee an exit from the current app; otherwise a full-screen occupant can trap the device. System recognizers therefore sit ahead of the app or carry higher priority: once a path matches a system pose, the app gesture is cancelled. To the user that is “I was dragging this object and it flew away / I am on the Home screen.” An app cannot beat the system with a hungrier recognizer; that would destroy the escape hatch. Some systems lend a short delay or an exclusion rectangle so a full-screen game is not constantly dismissed—that is the system loaning priority, not the app overpowering it. One input stream cannot mean two things. Arbitration leans to the system because the costs are asymmetric: a failed app gesture is a weaker feature; a failed system gesture is a person trapped inside the app.
Studying it
Log recognizer outcomes on the same path: whether the system action completed, whether the app received a cancel. Pair with intent interviews: the person said “next photo,” the system went back.
Independent variables: which recognizers are co-registered, whether exclusion zones are allowed, similarity of the gesture to the system pose. Dependent variables: system win rate, app-cancel rate, intent–outcome mismatch, whether escape from the app remains reliable.
Turning system gestures off in the lab measures uncontested recognition, not the device people hold. Do not report a single “gesture success rate” without splitting who succeeded. A trapped-user task (no system gesture, no exit) needs a safety stop; it is not an ordinary usability item.
Where it stops holding
Kiosk or supervised lock-down that disables system gestures cancels the relation by policy, not by an app winning. Trackpad gestures in a desktop window use a different arbiter. Button navigation under accessibility removes the contested surface. System exclusion zones hold only for short, declared full-screen cases; an ordinary feed must not steal Back with them.
Applying it
- Do not make a system-shaped gesture the only way to finish a critical task; pair it with a button or an in-page control.
- If a full-screen case asks to delay system gestures, keep a visible exit and return priority the moment full-screen ends.
- On every screen that registers a swipe, list conflicting directions and decide, per direction, “yield to the system” or “provide an alternative.”
- Verify by performing system Back, Home, and Control Center on every screen that fights for a gesture; the app must not block them. Then perform the app’s own swipe. Any “wanted the next page, left the app” or “wanted to leave, turned the page” means priority was not designed as the ruling.