pointerup events get dropped if tipped very quickly
Reported by
kailai.w...@hotmail.com,
May 25 2018
|
|||||||||
Issue descriptionSteps to reproduce the problem: 1. On Android tablet, open https://codepen.io/anon/pen/mLZXvz 2. Click the green region quickly for several times What is the expected behavior? I'd expect the pointer events to be handled sequentially but not get dropped, however with some delays (since the pointerdown event handler is blocked for 200ms). For example: pointerdown --> pointerup --> pointerdown --> pointerup.. What went wrong? Instead we observe often that pointerup for certain touchpoint is dropped. In this example the following is observed: pointerdown for 3 pointerup for 3 pointerdown for 4 pointerup for 4 pointerdown for 5 pointerdown for 5 another pointerdown for 5 ... Did this work before? N/A Chrome version: 66.0.3359.158 Channel: stable OS Version: 5.1.0 Flash Version: Is this intentional bahavior? Is it possible to change it via startup options or directly in chromium codes? With windows Desktop-chrome with touchpad attached it seems to function as expected: I get a series of pointerdown + pointerup event combinations with no events dropped. I appreciate any help in advance!
,
May 28 2018
,
May 28 2018
Tested the issue using #66.0.3359.158 on Android Micromax, 5.0.0 as per the steps mentioned below and could not reproduce the issue. Steps: 1. Launched Browser 2. Navigated to https://codepen.io/anon/pen/mLZXvz 3. Clicked the green region quickly for several times 4. Observed pointerup results for all the clicks. @kailali: Please find the observations and help us with the details of your device for further triaging of the issue? Thanks!!
,
May 28 2018
Hi there, thanks for the reply. I just tried it on two other android phones: - Samsung Galaxy S5, with chrome 66.0.3359.158, android 5.0.0; SM-G900F Build/LRX21T - motorola, with chrome 66.0.3359.158, android 5.1.0; XT1039 Build/LPBS23.13-17.3-1 in both cases I was able to reproduce the issue. Please see also the screenshot attached. I think you have to really tap it fast (like < 200ms interval). Also would you please try it on other android devices (tablets/phones)? Since I tried it on 3 of my android devices and it's 100% reproducible. Thanks and best regards, Kailai
,
May 28 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
,
May 29 2018
Tested the issue using #66.0.3359.156 on Samsung J7; 7.0.0 and reproduce the issue as per the steps mentioned below. Steps: 1. Launched Browser 2. Navigated to https://codepen.io/anon/pen/mLZXvz 3. Clicked the green region quickly for several times 4. Observed pointerup results are dropping for clicks. Observing the same behavior since M68. Untriaged for further inputs Please navigate to below link for log's and screen cast and screenshot of the error -- go/chrome-androidlogs/846649 Issue is seen in M69 as well Thanks!!
,
May 29 2018
,
May 31 2018
I don't think your page is printing that "another pointerdown" with checking a correct condition. Anyhow, I created another simpler page here: https://output.jsbin.com/wekoyecexo Pretty much just logs pointerdown and ups and delays in down handler. Can you try this and see whether at all you see more than one pointerdown for the same id being printed when tapping with fingers?
,
Jun 4 2018
Hi, thanks for the reply.Sorry I didn't find a way to quote, so I'd just write it here. "I don't think your page is printing that "another pointerdown" with checking a correct condition." Would you please explain a bit further why that page doesn't achieve the testing purpose? As I understand, there's just one more level of mapping: pointerID -> timerID, which is set in the pointerdown handler and then removed in the pointerup handler. "Can you try this and see whether at all you see more than one pointerdown for the same id being printed when tapping with fingers?" The answer would be yes: I still see multiple consecutive pointerdown events for the same IDs, see attached. Tested on: Samsung Galaxy S5, with chrome 67.0.3396.68, android 5.0.0; SM-G900F Build/LRX21T
,
Jun 4 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
,
Jun 4 2018
btw I'm seeing similar behavior in the windows-chrome using devtool-touch-emulator. For example, in device mode, just with a fast double click I see: pointerdown 2 pointerup 2 pointerdown 3 No pointerup for 3. By the next click it shows: pointerdown 3 pointerup 3 I'm not sure if this refers to the same problem as in android though. Best Regards, Kailai
,
Jun 7 2018
Looks like a codePen problem to me. #c8 above couldn't repro in jsbin. I couldn't repro with this simpler version: - Go to example.com. - Run this code in console: function wasteTime(ms) { let d = new Date(); while (((new Date()) - d) < ms) {} } ['pointerdown', 'pointerup', 'pointercancel'].forEach(e => { document.body.firstElementChild.addEventListener(e, evt => { console.log(evt.type, evt.pointerId); if (evt.type == "pointerdown") wasteTime(400); }) }); On the other hand, editing the codepen to leave only the console logs reproduces the bug.
,
Jun 7 2018
,
Jun 14 2018
Closing this for now as there wasn't any feedback from the reporter. Reporter if you happen to have feedback or further instructions feel free to come back here and comment or file a new bug. |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by kailai.w...@hotmail.com
, May 25 2018