Device emulation mode - touch emulation has ~200ms delay between touchstart and touchend
Reported by
splinte...@gmail.com,
Mar 24 2016
|
||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36 Steps to reproduce the problem: 1. open DevTools, enable device emulation 2. go to http://patrickhlauke.github.io/touch/tests/event-listener.html 3. tap on the test button to see fired events and their respective delays What is the expected behavior? As on a real touchscreen device with touch events, for a clean tap (with no/not much movement) there should be no/very little delay between touchstart and touchend (a few ms at most) What went wrong? Currently it seems there's a good 200ms+ delay between touchstart and touchend (see attached screenshot) Did this work before? Yes Not sure of exact version, but definitely at the time when device emulation looked different/had default dark UI - see https://github.com/patrickhlauke/getting-touchy-presentation/commit/0e84d2cb0db013ba61c96e9e455e7a7aac0c24c5 Chrome version: 49.0.2623.87 Channel: n/a OS Version: 10.0 Flash Version: Shockwave Flash 21.0 r0
,
Mar 24 2016
Could this be a mobile vs desktop touch configuration? I'll take a look whether we use the correct one.
,
Mar 25 2016
Configuration is fine. In fact, I cannot reproduce the problem on 49.0.2623.108. Latency is usually around 30ms (it's really hard to click fast), but I even managed to get 1ms and 6ms. Could it be that your computer is busy with something else and is slow with processing? Or maybe there is a real touch screen which interferes?
,
Mar 25 2016
Strangely, trying the exact same thing today gives me a much lower delay (averaging somewhere between 65-110ms). Still noticeable, but nowhere near the 200ms+ I was getting yesterday. As I am testing this on a Surface 3, touch is enabled/automatic. I tried explicitly disabling touch events in chrome://flags, but that made no difference. (note that my results above where the result of using the mouse, despite the presence of a real touchscreen) I also tried to see if at the time the Surface was in power saving mode, and if that had any impact...switching the laptop explicitly into power saving also had no discernible effect. In short, this may have been a random occurrence, chalk it up to my computer being somehow otherwise busy/taxed (though even the delays of 65-110ms I'm experiencing today are a bit higher than what I'd expect). Perhaps though they've always been this way, just that when I tried device emulation previously to test the event sequence and delays (as per https://github.com/patrickhlauke/getting-touchy-presentation/commit/0e84d2cb0db013ba61c96e9e455e7a7aac0c24c5) I was doing so on my main desktop PC (with obviously beefier processor, memory, etc) rather than on my puny Surface 3. Feel free to close this if nothing obvious seems broken. (though perhaps, if you can spare the time, try and test on an underpowered/low spec device and see if you can replicate similar results)
,
Mar 25 2016
Yeah I'm not seeing any problems myself. This timing (between emulated touchstart and touchend) will depend on the time between the mousedown and mouseup events. So the touchstart->touchend delta with touch emulation should be basically the same as mousedown->mouseup delta without touch emulation. If you can reproduce a scenario where that's not the case we can investigate further. If it happens again you could record a trace with the 'input' category enabled to help us see if there's something in Chrome or just coming from Windows that way (https://www.chromium.org/developers/how-tos/trace-event-profiling-tool/recording-tracing-runs).
,
Mar 25 2016
Going purely by mouse events, using my test page, I see a delay between mousedown and mouseup (with a focus event fired in between) of about 90ms. As such, I'll put the average 65-110ms delay with touch in emulation mode down to my particular machine's profile/processing speed etc. The 200ms+ from yesterday may well have been a fluke/due to Surface 3 doing particularly taxing operations maybe in the background at that particular point in time. Thanks for investigating it though, sorry about the noise :) |
||||
►
Sign in to add a comment |
||||
Comment 1 by rbyers@chromium.org
, Mar 24 2016