Bug 239416

Summary: "touch-action: none" does not prevent page change gestures
Product: WebKit Reporter: Hristiyan Dodov <h.dodov>
Component: UI EventsAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Trivial CC: thorton, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: Safari 15   
Hardware: iPhone / iPad   
OS: iOS 15   
Attachments:
Description Flags
Bug reproduction page none

Description Hristiyan Dodov 2022-04-16 04:28:43 PDT
Created attachment 457746 [details]
Bug reproduction page

Pointer gestures starting on a `touch-action: none` element should not trigger the browser's default behavior of going to previous/next page.

The spec (https://www.w3.org/TR/pointerevents3/) says:
> Direct manipulation interactions that begin on the element MUST NOT trigger behaviors related to viewport panning and zooming.

Page change gestures don't manipulate the viewport itself. Thus, one could argue that touch-action should not affect them. However, this introduces unexpected end-user behavior. If a page implements custom panning gestures, the user could suddenly go to a different page, due to the default browser behavior. Since touch-action's purpose is to enable custom gestures and get default browser behavior out of the way, I believe it should cover page change gestures as well.

Android browsers also have similar page change gestures from the edge of the screen, but `touch-action: none` disables them, as expected.
Comment 1 Radar WebKit Bug Importer 2022-04-23 04:29:12 PDT
<rdar://problem/92213258>