Android mouse events shouldn't appear as TouchEvents
Android low-level mouse events in Chrome used to follow the
"default" MotionEvent path which is designed for touches. In
particular in Blink, mouse events appeared as PlatformTouchEvents
which had some bad side-effects:
A. TouchEvents were fired for mouse.
B. Mouse events were suppressed through prevent-defaulting touch
events.
C. Mouse event suppression thru canceled touches apply only to
non-hovering mouse.
This CL fixes the mouse issues by routing Android mouse events
through a dedicated Web/PlatformMouseEvent path. The stylus
properties are also plumbed, to make Android stylus support
easier (follow-up CL).
Design doc: https://docs.google.com/document/d/1mpBR7J7kgTXvp0QACVjhxtwNJ7bgGoTMmxfxN2dupGg/edit?usp=sharing
BUG=468806,587550
Review-Url: https://codereview.chromium.org/2054193002
Cr-Commit-Position: refs/heads/master@{#431571}
19 files changed