Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?
No, and if any issue is found, we have a feature flag acting as a kill switch (SuppressPointerStreamAfterDrag).| Shipping on desktop | 147 |
| Shipping on Android | 147 |
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).
N/AContact emails[email protected]
Specificationhttps://html.spec.whatwg.org/multipage/dnd.html#drag-and-drop-processing-model:~:text=Fire%20a%20pointer%20event%20at%20the%20source%20node%20named%20pointercancel%2C%20and%20fire%20any%20other%20follow%2Dup%20events%20as%20required%20by%20Pointer%20Events.%20%5BPOINTEREVENTS%5D
SummaryAccording to the HTML spec, when a drag starts the user agent should send the appropriate events to the drag source to indicate that the pointer event stream has ended, and that it shouldn't expect any more events from this pointer [1]. This code had been partially implemented for mouse events and fully implemented for touch drags on Android. With the work in this feature, we aim to fully satisfy this spec requirement on all other platforms. [1] Pointer event spec definition of pointer stream suppression: https://w3c.github.io/pointerevents/#suppressing-a-pointer-event-stream
Blink componentBlink>DataTransfer
Web Feature IDdraganddrop
MotivationChromium is currently out of spec when starting drag-and-drop operations. According to the specification, the user agent must notify the drag source that it will no longer receive pointer events from the same input source by firing the corresponding drag-* events. This behavior is fully implemented only on Android; on other platforms, Chromium does not fire all of the required events.
Initial public proposalNo information provided
TAG reviewNo information provided
TAG review statusNot applicable
Risks
Interoperability and CompatibilityOther browsers also fall out of spec in this particular point and don't send the appropriate events when a drag starts, which means that Chromium will be the only browser that implements this behavior.
Gecko: Neutral (https://bugzilla.mozilla.org/show_bug.cgi?id=1994552) A bug has been filed and has received interest from Firefox developers.
WebKit: No signal (https://github.com/WebKit/standards-positions/issues/598) (Will update the signal when the issue receives feedback)
Web developers: Positive (https://github.com/w3c/pointerevents/issues/555) We have received developer feedback [1] regarding the browser's behavior with respect to the specification.
Other signals:
WebView application risksDoes this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?
No, and if any issue is found, we have a feature flag acting as a kill switch (SuppressPointerStreamAfterDrag).
DebuggabilityNo additional functionality is needed to be added to debug this feature
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?Yes
Is this feature fully tested by web-platform-tests?Yes
https://wpt.fyi/results/html/editing/dnd/events/pointer-suppression.html (currently failing because the change is behind a disabled feature flag)
Flag name on about://flagsNo information provided
Finch feature nameSuppressPointerStreamAfterDrag
Non-finch justificationThe feature will be shipped enabled by default to be used as a kill-switch in case a severe issue is discovered.
Rollout planWill ship enabled for all users
Requires code in //chrome?False
Tracking bughttps://issues.chromium.org/issues/452372355
Estimated milestones
Shipping on desktop 147 Shipping on Android 147
Anticipated spec changesOpen 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).
N/A
Link to entry on the Chrome Platform Statushttps://chromestatus.com/feature/6732314958757888?gate=6606447989358592
This intent message was generated by Chrome Platform Status.
--
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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/699f5247.050a0220.1eaaa1.0000.GAE%40google.com.