Contact [email protected], [email protected]

ExplainerNone

Specificationhttps://w3c.github.io/uievents/#event-type-mousemove

Summary

Canceling mousemove will not prevent text selection or drag-and-drop.
Chrome allowed cancelling mousemove events to prevent other APIs like text
selection (and even drag-and-drop in the past). This does not match other
major browsers; nor does it conform to the UI Event spec:
https://w3c.github.io/uievents/#event-type-mousemove Through this feature,
the default-action of mousemove becomes none. Text selection and
drag-and-drop can still be prevented through cancelling selectstart and
dragstart events respectively, which are spec compliant and fully
interoperable.


Blink componentBlink>Input
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EInput>

TAG reviewNone

TAG review statusNot applicable

Risks


Interoperability and Compatibility

This feature will make Chrome fully interoperable. Chrome is currently
failing the corresponding WPT (a part of Interop 2023) while both Mozilla
and WebKit have started passing the WPT recently. There is a bit of compat
risk. We attempted it twice in the past but had to revert for two different
reasons: in 2014 we faced a text-selection regression
https://crbug.com/485892 on an app that no longer shows the problem
(because app event handling changed), then in 2018 we faced a drag-and-drop
regression https://crbug.com/878392 that is irrelevant now (because Chrome
drag-and-drop changed). For our current attempt the risk from
text-selection remains, and we need to expose the feature to be able to
assess the risk. We have added a use-counter and turned on the feature as
"experimental" on M121 to observe field data before shipping it.


*Gecko*: Shipped/Shipping (
https://bugzilla.mozilla.org/show_bug.cgi?id=1823663)

*WebKit*: Shipped/Shipping (https://bugs.webkit.org/show_bug.cgi?id=262878)

*Web developers*: Positive (https://crbug.com/346473#c6)

*Other signals*:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None


Debuggability

None


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?No

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

https://wpt.fyi/results/uievents/mouse/mousemove_prevent_default_action.tentative.html?label=experimental&label=master&aligned


Flag name on chrome://flagsNone

Finch feature nameMouseDragOnCancelledMouseMove

Requires code in //chrome?False

Tracking bughttps://crbug.com/346473

MeasurementWe have added the use-counter kMouseDragOnCancelledMouseMove to
track possible regressions in the wild.

Sample links
https://codepen.io/mustaqahmed/full/wvNYGEP

Estimated milestones
Shipping on desktop 122
Shipping on Android 122
Shipping on WebView 122

Anticipated spec changes

Open questions about a feature may be a source of future web compat or
interop issues. Please list open issues (e.g. links to known github issues
in the project for the feature specification) whose resolution may
introduce web compat/interop risk (e.g., changing to naming or structure of
the API in a non-backward-compatible way).
None.

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5145305056280576

This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAB0cuO7reN%2B6Wb_N99jNm_aJY7fhhQ1ncCrh_J_%2BFCLdASm0eg%40mail.gmail.com.

Reply via email to