Issue metadata
Sign in to add a comment
|
Rogue mousemove event fired ~680 ms after touchstart
Reported by
pontus.a...@gmail.com,
May 6 2017
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3088.4 Safari/537.36 Steps to reproduce the problem: 1. Open Chrome. 2. Open DevTools. 3. Toggle Device Toolbar and set it to a touch device. 4. Press left mouse button and keep it held. 5. After ~680ms mousemove event will be fired once. See https://github.com/pomle/chrome-bugs-repr/tree/master/rouge-mousemove for repoduction details. What is the expected behavior? No mousemove event should emit. What went wrong? A mousemove event was emit from a touch device without any human input. Did this work before? Yes Chrome version: 60.0.3088.4 Channel: stable OS Version: 10.0 Flash Version: Probably incidental, but this bug did not occur at the time this was filed https://bugs.chromium.org/p/chromium/issues/detail?id=639300
,
May 8 2017
This isn't a rogue event. It is sent part of the long press sequence for interoperability. You are seeing the event after 680ms because of the long press gesture timer. https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/input/GestureManager.cpp?l=371 Do you have a specific use case where this is misbehaving?
,
May 8 2017
,
May 8 2017
I have this little project where we render game controllers on Android and send WebRTC events from user input: http://snex.io/ The code is written to handle both mouse and touch gestures. The problem I got with this "bug" was that when the mousemove event is fired, no buttons are considered pressed, and I read that as user has stopped all input. That code can be found here: https://github.com/snex-io/snex-web/blob/9fce49da766c4f2e42d92eeded3de3a0ddc0dbe6/public/scripts/remote.js#L74 I can certainly handle this by any number of circumventions in JavaScript, but to me it looks like a code design smell that a mousemove event has to be fake emitted on a touch device. However, I don't know enough about the history around that decision to say.
,
May 8 2017
Thank you for providing more feedback. Adding requester "dtapuska@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 8 2017
There are lots of fake mouse moves emitted on touch devices for compatibility issues. I suggest you actually write your app using pointer events instead of handling the legacy touch and mouse events. Although it depends on the target of your application because iOS doesn't support pointer events.
,
May 22 2017
The NextAction date has arrived: 2017-05-22
,
May 23 2017
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by tkent@chromium.org
, May 7 2017