Primary eng (and PM) emails
Summary
The dropzone global attribute [1, 2] was introduced by the HTML5 drag and drop specification as a declarative method for specifying an HTML element's willingness to be the target of a drag-and-drop operation, as well as the content types that can be dropped onto the element, and the operation (copy/move/link) that would result from dropping something onto the element. No browser has implemented the unprefixed version. Blink and WebKit implement a prefixed form of the attribute, webkitdropzone.
Given that the attribute failed to gain traction with other browsers, I would like to immediately remove it from our implementation, to reduce the risk of having Web content grow to depend on it.
[1] https://html.spec.whatwg.org/multipage/interaction.html#the-dropzone-attribute
[2] https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dropzone
Motivation
This is a prefixed attribute that will never be standardized. The standardized version of the attribute is failing to gain traction from other browser implementers. Therefore, I would like to remove the attribute before Web content starts depending on it.
Compatibility And Interoperability Risk
No browser currently supports the un-prefixed version of the attribute [1].
Our implementation was incorrect until M57 [2, 3], so webkitdropzone could not be used to accept file drops on sites (it only worked for file: origins). We didn't receive any complaints, and I only learned about the bug while trying to fix an issue [4, 5] whose code happened to be related to the webkitdropzone implementation.
Given these issues, applications targeting the Web platform (i.e. Firefox, Edge, IE) cannot rely on dropzone / webkitdropzone support, and must declare the willingness to accept drag-and-drop operations via the imperative API offered by the dragenter and dragover event handlers [6].
Edge: No signals
Firefox: Not supported - bug comment suggests they're unhappy with the spec https://bugzilla.mozilla.org/show_bug.cgi?id=723008
Safari: Public support - rniwa opened a bug on Firefox's tracker asking for the attribute to be implemented https://bugzilla.mozilla.org/show_bug.cgi?id=723008
Web developers: No signals
[1] http://caniuse.com/#feat=dragndrop
[2] https://crrev.com/2575303002
[3] https://crrev.com/2585553002
[5] https://crrev.com/2575303002
[6] https://developer.mozilla.org/en-US/docs/Web/Events/dragenter
Alternative implementation suggestion for web developers
Applications targeting the Web platform should declare their willingness to accept drag-and-drop operations via the imperative API offered by the dragenter and dragover event handlers.
Usage information from UseCounter
https://www.chromestatus.com/metrics/feature/timeline/popularity/490
https://www.chromestatus.com/metrics/feature/popularity#PrefixedHTMLElementDropzone
The usage appears to be at 0.07% currently. However, based on the HTTPArchive data below, I'd guess that most of it is feature detection.
Looking at HTTPArchive yielded the following results:
https://community.sears.com/auraFW/javascript/C9w03EpEHI__XcCDlMV8MQ/aura_prod.js -- in list of attributes, doesn't appear to be used
https://community.kmart.com/auraFW/javascript/C9w03EpEHI__XcCDlMV8MQ/aura_prod.js -- exactly the same as above
https://globalchallenges.org/main.5bd764e65b815c6d94e3.bundle.js -- in list of attributes, doesn't appear to be used
http://html5test.com/scripts/8/engine.js -- seems like it'll cause us to lose a point in html5test.com
https://questions.learnosity.com/v2.97.0/dist/api.js -- check for prefixed versions of dropzone in all browsers
OWP launch tracking bug
Entry on the feature dashboard
https://www.chromestatus.com/feature/5718005866561536
Requesting approval to remove too?
Yes
Do you think we should also yank this unprefixed attribute from the HTML spec as well? If we start that process now, it'd be a chance for others to protest if they actually did want to implement and ship this but haven't gotten around to it yet.
The number of sites in httparchive is remarkably small, so this seems rather low risk. Almost certainly the counter is being hit by accident by enumeration, which is a common problem with attributes. In https://bigquery.cloud.google.com:443/savedquery/762219082167:20eb08762edc47178a5e7caba3170864 there are 500 hits of the use counter, if you're curious about how that might happen. I didn't look too closely, and one can safely assume this sites will not be breaking.Can you write an example code snippet for how to migrate from webkitdropzone to dragenter + dragover? Something that can be copy-pasted can really help when sites are suddenly broken.
--
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 blink-dev+unsubscribe@chromium.org.
☆PhistucK
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
☆PhistucK
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
☆PhistucK
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
☆PhistucK
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Great, thank you! It sounds like you could also submit a spec/test PR that's likely to be accepted.
--
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.