Hi Rohan, I tried https://wpt.live/html/editing/dnd/drop/025.html in Firefox (macOS) and it fails, but in a different way from Chrome. Does this test match the spec, and if it does will Chrome fully pass it with these changes? I'm trying to understand if we are going to match Firefox in the details here.
Also, can this test be automated, and if not what kind of testing infrastructure is missing? Best regards, Philip On Tue, Jan 13, 2026 at 6:37 AM Chromestatus < [email protected]> wrote: > *Contact emails* > [email protected] > > *Specification* > > https://www.w3.org/TR/2011/WD-html5-20110113/dnd.html#dom-datatransfer-dropeffect > > *Summary* > The HTML5 Drag and Drop API allows web applications to handle > drag-and-drop operations through a series of events: `dragstart`, > `dragenter`, `dragover`, `dragleave`, `drop`, and `dragend`. During these > events, the [`dataTransfer.dropEffect`]( > https://www.w3.org/TR/2011/WD-html5-20110113/dnd.html#dom-datatransfer-dropeffect) > property indicates which operation (copy, move, link, or none) should be > performed. According to the [HTML5 specification]( > https://www.w3.org/TR/2011/WD-html5-20110113/dnd.html#dndevents), the > `dropEffect` value set by web applications during the last `dragover` event > should be preserved and available in the subsequent `drop` event. However, > Chromium-based browsers were overwriting the web application's `dropEffect` > value with the browser's own negotiated operation before the `drop` event > fired, breaking specification compliance and limiting developer control > over drag-and-drop behavior. > > *Blink component* > Blink>DataTransfer > <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EDataTransfer%22> > > *Web Feature ID* > draganddrop <https://webstatus.dev/features/draganddrop> > > *Motivation* > The current behavior: - Violates the HTML5 specification: Contradicts the > standardized behavior defined in the HTML5 Drag and Drop API - Breaks > developer control: Removes the ability for web applications to manage their > own drag-and-drop operations - Creates unpredictable UX: The operation > indicated during drag (via cursor feedback) may not match what's available > in the drop handler - Forces workarounds: Developers must store > `dropEffect` values in global variables or custom data attributes rather > than using the standard API - Limits functionality: Makes it impossible to > build spec-compliant file managers, code editors, and other applications > requiring sophisticated drag-and-drop > > *Initial public proposal* > *No information provided* > > *Search tags* > draganddrop <http:///features#tags:draganddrop>, dropEffect > <http:///features#tags:dropEffect> > > *TAG review* > *No information provided* > > *TAG review status* > Not applicable > > *Risks* > > > *Interoperability and Compatibility* > *No information provided* > > *Gecko*: Shipped/Shipping > > *WebKit*: No signal ( > https://github.com/WebKit/standards-positions/issues/596) > > *Web developers*: Strongly positive ( > https://issues.chromium.org/issues/40068941) 42 upvotes on the associated > Chromium issue > > *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* > No new functionality needed for debuggability > > *Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, ChromeOS, Android, and Android WebView)?* > Yes > This is a blink level change independent of platform implementation. > > *Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?* > Yes > There are few manual WPTs like > https://wpt.live/html/editing/dnd/drop/025.html which cover this feature. > Chromium has internal web tests / unit tests as well for this feature. > > *Flag name on about://flags* > *No information provided* > > *Finch feature name* > PreserveDropEffect > > *Rollout plan* > Will ship enabled for all users > > *Requires code in //chrome?* > False > > *Tracking bug* > https://issues.chromium.org/issues/40068941 > > *Estimated milestones* > Shipping on desktop 146 > Shipping on Android 146 > Shipping on WebView 146 > > *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). > *No information provided* > > *Link to entry on the Chrome Platform Status* > https://chromestatus.com/feature/5140028068069376?gate=6545001561587712 > > 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/6965d9fc.050a0220.10ef4e.02b1.GAE%40google.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6965d9fc.050a0220.10ef4e.02b1.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/CAARdPYd%2BrAZ7ZOv9ewjYkbESDT%3D1h9v%3D-RpJyADr1_Me4tgtuQ%40mail.gmail.com.
