LGTM3
/Daniel
On 2023-11-29 18:01, Chris Harrelson wrote:
LGTM2
On Wed, Nov 29, 2023 at 8:27 AM Yoav Weiss <[email protected]> wrote:
LGTM1
This seems to reduce interop risk. Thanks!
On Tuesday, November 21, 2023 at 6:45:00 PM UTC+1 snianu wrote:
Contact emails
[email protected], [email protected],
[email protected], [email protected]
Explainer
https://docs.google.com/document/d/1OLVOESy3zecxY_6jMKdKVxeIGS2Q6mDmzc85rUNrRIE/edit?usp=sharing
Specification
https://w3c.github.io/clipboard-apis/#dom-clipboard-read
Design docs
https://github.com/w3c/clipboard-apis/issues/179
https://docs.google.com/document/d/1OLVOESy3zecxY_6jMKdKVxeIGS2Q6mDmzc85rUNrRIE/edit?usp=sharing
Summary
When the system clipboard is either empty or has unsupported
formats, paste event returns an empty DataTransfer object, but
the promise for `navigator.clipboard.read()`API is rejected.
This creates interop differences and confusion among web
developers as they aren’t sure why read failed.
Currently in Chrome, we throw a DataError. The proposal here
is to return an empty ClipboardItem when the system clipboard
is either empty or there aren’t any supported formats.
Blink component
Blink>DataTransfer
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EDataTransfer>
Search tags
AsyncClipboardAPI
<https://chromestatus.com/features#tags:AsyncClipboardAPI>,
ClipboardItem
<https://chromestatus.com/features#tags:ClipboardItem>
TAG review
None
TAG review status
Not applicable
It satisfies one of the criterias for exception
<https://www.chromium.org/blink/guidelines/api-owners/process-exceptions/>.
This change has already been shipped in Safari
<https://github.com/w3c/clipboard-apis/issues/179#issuecomment-1804303784> and
Firefox has also implemented it
<http://(https://github.com/w3c/clipboard-apis/issues/179#issuecomment-1211995581>.
The spec already allows empty ClipboardItem during read so it
doesn’t need any update.
Risks
Interoperability and Compatibility
None. Safari has shipped this feature and Firefox has already
implemented it.
/Gecko/: Positive
(https://github.com/w3c/clipboard-apis/issues/179#issuecomment-1211995581)
/WebKit/: Shipped/Shipping
(https://github.com/w3c/clipboard-apis/issues/179#issuecomment-1804303784)
/Web developers/: Positive This was a feedback from our
partners at Office who are migrating from DataTransfer API to
Async Clipboard API.
/Other signals/:
Ergonomics
N/A
Activation
N/A
Security
None. The proposal only returns an empty ClipboardItem instead
of rejecting the promise returned from the read() method when
the clipboard is empty, so there isn’t any impact on the async
clipboard API.
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
Existing devtools support should suffice.
Will this feature be supported on all six Blink
platforms (Windows, Mac, Linux, Chrome OS, 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>?
No
Currently emptying the clipboard is not exposed to the web, so
it's not possible to add a WPT test for it.
Flag name on chrome://flags
None
Finch feature name
None
Non-finch justification
None
Requires code in //chrome?
False
Tracking bug
https://bugs.chromium.org/p/chromium/issues/detail?id=1500440
Sample links
https://flash-lateral-nylon.glitch.me
Estimated milestones
Shipping on desktop
121
Shipping on Android
121
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5192271976988672
This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.
Thanks,
Anupam
Sent from Outlook <http://aka.ms/weboutlook>
--
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/2adf2536-daac-401a-8292-c65317d82fd3n%40chromium.org
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/2adf2536-daac-401a-8292-c65317d82fd3n%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 on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-k492DnKhWZMSSgM0E8fF-9CE1%2BoF_%3Dyhei4dC0uD9-g%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-k492DnKhWZMSSgM0E8fF-9CE1%2BoF_%3Dyhei4dC0uD9-g%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 on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/dff56d5e-9df7-41b8-8c72-f4e78b7891b8%40gmail.com.