LGTM2
/Daniel
On 2026-03-04 17:26, Vladimir Levin wrote:
Thanks for the responses,
LGTM1
Thanks,
Vlad
On Wed, Mar 4, 2026 at 11:21 AM 'Gaston Rodriguez' via blink-dev
<[email protected]> wrote:
Hi Vlad,
/> Can you elaborate on the exact change this feature is
introducing? It sounds like there is no change on Android since
all of the required events are firing. Which additional events are
now fired on other platforms when drag starts (and which events
were already firing)? /
/> Are there any events that we are now _not_ firing as a result
of this?/
You're right that there's no change in Android since it was
already satisfying the requirements. I removed the Android 147
ship tag. With this change, we now fire three additional events to
the drag source on drag start: `pointercancel`, `pointerout` and
`pointerleave`, there are no events that have been removed. I
updated the summary by adding the following paragraph:
/> Practically, this means that after a drag has started the drag
source will now receive the `pointercancel`, `pointerout` and
`pointerleave` events to indicate that the current event stream
has finished./
/> It seems to be passing right now, is that expected?/
Yes, I had added the flag as experimental and assumed that the WPT
platform wouldn't run with that flag enabled, TIL. Removed the
disclaimer.
Thanks!
On Thursday, February 26, 2026 at 11:21:24 AM UTC-8 Vladimir Levin
wrote:
Hi,
Some comments below:
On Wed, Feb 25, 2026 at 2:49 PM Chromestatus
<[email protected]> wrote:
*Contact emails*
[email protected]
*Specification*
https://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
*Summary*
According 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 component*
Blink>DataTransfer
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EDataTransfer%22>
*Web Feature ID*
draganddrop <https://webstatus.dev/features/draganddrop>
*Motivation*
Chromium 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.
Can you elaborate on the exact change this feature is
introducing? It sounds like there is no change on Android
since all of the required events are firing. Which additional
events are now fired on other platforms when drag starts (and
which events were already firing)?
Are there any events that we are now _not_ firing as a result
of this?
*Initial public proposal*
/No information provided/
*TAG review*
/No information provided/
*TAG review status*
Not applicable
*Risks*
*Interoperability and Compatibility*
Other 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 risks*
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).
*Debuggability*
No 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
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
Yes
https://wpt.fyi/results/html/editing/dnd/events/pointer-suppression.html
(currently failing because the change is behind a disabled
feature flag)
It seems to be passing right now, is that expected?
Thanks!
Vlad
*Flag name on about://flags*
/No information provided/
*Finch feature name*
SuppressPointerStreamAfterDrag
*Non-finch justification*
The feature will be shipped enabled by default to be used
as a kill-switch in case a severe issue is discovered.
*Rollout plan*
Will ship enabled for all users
*Requires code in //chrome?*
False
*Tracking bug*
https://issues.chromium.org/issues/452372355
*Estimated milestones*
Shipping on desktop 147
Shipping on Android 147
*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).
N/A
*Link to entry on the Chrome Platform Status*
https://chromestatus.com/feature/6732314958757888?gate=6606447989358592
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 visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/699f5247.050a0220.1eaaa1.0000.GAE%40google.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/699f5247.050a0220.1eaaa1.0000.GAE%40google.com?utm_medium=email&utm_source=footer>.
--
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/523eb706-f81c-4713-835e-1a95361af6d5n%40chromium.org
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/523eb706-f81c-4713-835e-1a95361af6d5n%40chromium.org?utm_medium=email&utm_source=footer>.
--
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/CADsXd2Poogbi%2Bj%2BQY7kfh2xL05CiJ2VCUGVWLD4Xtu%3D%2B8WYudQ%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADsXd2Poogbi%2Bj%2BQY7kfh2xL05CiJ2VCUGVWLD4Xtu%3D%2B8WYudQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
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/978a4078-3c26-4b53-b01a-3d751fc1658c%40gmail.com.