Fire pointer events for disabled form controls |
|||||
Issue descriptionIt appears we followed the broken mouse model of not firing events for disabled form controls. We really should be firing events regardless of state. See issue: https://github.com/w3c/pointerevents/issues/177
,
Feb 24 2017
This looks trivial: https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/dom/Node.cpp?rcl=cb12cafde748de82eb55f491054eb2cd84fed63c&l=2075 The isMouseEvent check just needs a '&& !isPointerEvent' clause. So I agree we should just fix this. But can we also track investigating / fixing the mouse event case too? It may be easy to restrict this wart to 'click' events.
,
Feb 24 2017
,
Feb 24 2017
rbyers@ the code is actually here: https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/events/PointerEvent.cpp?q=PointerEvent.cpp&l=86 And PointerEvent.h has a virtual isMouseEvent() that returns false; so that piece of code is really nothing relevant. I put up a change here: https://codereview.chromium.org/2716063002/ just need to write a layout test for it.
,
Feb 24 2017
Ah, thanks - guess I should stop pretending I know this code anymore ;-)
,
Feb 24 2017
hey I commented on the public bug that I didn't know where it was.. had to debug. The mouse code looks entirely confusing like people just littered isDisabledFormControl in various spots.
,
Feb 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0f907f2463c4ba3b314f0142e0d1a171bf5f2598 commit 0f907f2463c4ba3b314f0142e0d1a171bf5f2598 Author: dtapuska <dtapuska@chromium.org> Date: Mon Feb 27 19:53:22 2017 Send pointer events regardless of it being a disabled form control. Seems pointer events carried over a model from mouse events that it shouldn't have. Always dispatch pointer events to disabled form controls. BUG= 695979 Review-Url: https://codereview.chromium.org/2716063002 Cr-Commit-Position: refs/heads/master@{#453305} [modify] https://crrev.com/0f907f2463c4ba3b314f0142e0d1a171bf5f2598/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/0f907f2463c4ba3b314f0142e0d1a171bf5f2598/third_party/WebKit/LayoutTests/external/wpt/MANIFEST.json [add] https://crrev.com/0f907f2463c4ba3b314f0142e0d1a171bf5f2598/third_party/WebKit/LayoutTests/external/wpt/pointerevents/pointerevent_disabled_form_control-manual.html [add] https://crrev.com/0f907f2463c4ba3b314f0142e0d1a171bf5f2598/third_party/WebKit/LayoutTests/external/wpt_automation/pointerevents/pointerevent_disabled_form_control-manual-automation.js [modify] https://crrev.com/0f907f2463c4ba3b314f0142e0d1a171bf5f2598/third_party/WebKit/Source/core/events/PointerEvent.cpp
,
Feb 27 2017
,
Mar 8 2017
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by dtapu...@chromium.org
, Feb 24 2017Components: Blink>Input
Labels: -Pri-3 Hotlist-Input-Dev Hotlist-Interop Pri-2
Owner: dtapu...@chromium.org
Status: Assigned (was: Untriaged)