touch-action not honored when pointerdown delete the element under the cursor
Reported by
jf.pamb...@gmail.com,
Apr 2 2018
|
|||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36 Steps to reproduce the problem: 1. Using your finger or an active pen, start panning on the pink rectangle. What is the expected behavior? Nothing since 'touch-action: none;' is applied to outerDiv and all of it's childrens. This works fine if the 'pointerdown' event does not remove the pink rectangle. What went wrong? When removing the path under under the cursor on 'pointerdown', 'touch-action: none;' is not honored even if the containing svg and div elements still have the style applied. Did this work before? N/A Does this work in other browsers? N/A Chrome version: 65.0.3325.181 Channel: stable OS Version: 10.0 Flash Version:
,
Apr 4 2018
,
Apr 5 2018
Tested the issue on Win-10 touch screen laptop using chrome reported version #65.0.3325.181 and latest canary #67.0.3388.0. Attached a screen cast for reference. Following are the steps followed to reproduce the issue. ------------ 1. Opened the attached file "index.html" 2. Used a stylus pen and started panning on the pink rectangle from left to right and from left to right. 3. Observed that screen started moving on panning the rectangle using stylus. 4. Using latest canary #67.0.3388.0 and latest beta #66.0.3359.81, there was no screen movement on panning the rectangle using stylus. Reporter@ - Could you please check the attached screen cast and please let us know if it is the issue. Also please check the behaviour in latest beta #66.0.3359.81 and please let us know if issue persists there or not. The latest chrome builds can be downloaded from the below URL: https://www.chromium.org/getting-involved/dev-channel Thanks...!!
,
Apr 5 2018
I can see now that my initial instructions were not 100% clear (sorry about that). Your video might show the same issue, but I am not familiar enough with this left-right gesture to tell. I have changed the outer div to a light gray so it's a bit clearer. From my understanding, the 'touch-action: none' should be applied to this outer div and all of its children preventing any pan actions in the gray and pink area. The attached video is using Chrome's device simulator so that you can see the pointer and get a sense of what is going on. Pan works as expected outside of the outer div (white area). Pan is prevented as expected in the gray area. However, pan is not prevented in the pink square (this is the issue). Thanks, JF
,
Apr 5 2018
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 5 2018
I can reproduce this bug as well. It works fine on Edge. Looking at the code it should work on Chrome as well. But I'm guessing I'm missing a code path here that causes this to fail.
,
Jun 28 2018
A crack in the repro is causing the bug, I think Chrome is working as intended here. The repro creates-and-deletes the innermost element at every "pointerdown". Therefore, if the "pointerdown" is on the innermost element, the hittest element is gone (and replaced by a new identical one). Naturally, the touch-action of the parent of the hittest element is determining the outcome here. I have attached a smaller repro: this behaves the same as the original repro. However, if the event handler at outerDiv is changed from |removeAndAdd| to |removeAndAddOnce|, the bug doesn't reproduce.
,
Jun 28 2018
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by viswa.karala@chromium.org
, Apr 3 2018