LGTM1

On Monday, May 18, 2026 at 5:39:00 AM UTC-7 Shweta Bindal wrote:

> Hi @Vincent <[email protected]>
>
> This feature was shipped in 2019 by Safari. 
> 203168 – [Clipboard API] Implement ClipboardItem.getType() for platform 
> clipboard items <https://bugs.webkit.org/show_bug.cgi?id=203168> - this 
> is the bug under which it was shipped.
>
> Regards,
> Shweta Bindal 
> ------------------------------
> *From:* Vincent Scheib <[email protected]>
> *Sent:* Saturday, May 16, 2026 4:16 AM
> *To:* Shweta Bindal <[email protected]>
> *Cc:* blink-dev <[email protected]>; Rakesh Goulikar <
> [email protected]>; Rohan Raja <[email protected]>; ASHISH 
> KUMAR <[email protected]>
> *Subject:* [EXTERNAL] Re: [blink-dev] Intent to Ship: Selective Clipboard 
> Format Read 
>  
> You don't often get email from [email protected]. Learn why this is 
> important <https://aka.ms/LearnAboutSenderIdentification> 
> Looking forward to this, it seems a good optimization no web developer API 
> change. How long has this been shipped in Safari?
>
> On Thu, May 14, 2026 at 1:03 AM 'Shweta Bindal' via blink-dev <
> [email protected]> wrote:
>
> *Contact emails*
> [email protected], [email protected], 
> [email protected]
>
> *Explainer*
>
> https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/ClipboardAPI/SelectiveClipboardFormatRead/explainer.md
>
> *Specification*
> https://github.com/w3c/clipboard-apis/pull/248
>
> *Summary*
> Enhances the Asynchronous Clipboard API by deferring actual clipboard data 
> retrieval from the OS until the web application calls getType(). Instead of 
> eagerly fetching all available formats at read() time, the browser now 
> returns ClipboardItem objects with available MIME types but without the 
> underlying data, and reads from the OS clipboard only when getType() is 
> invoked. const items = await navigator.clipboard.read(); // No data read 
> yet const text = await items.getType('text/plain'); // Only 'text/plain' 
> data read here This reduces CPU usage, improves the perceived 
> responsiveness of the API call, and optimizes the browser's power 
> consumption.
>
> *Blink component*
> Blink>DataTransfer 
> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EDataTransfer%22>
>
> *Web Feature ID*
> async-clipboard <https://webstatus.dev/features/async-clipboard>
>
> *Motivation*
> Currently, web applications can read clipboard content through the Async 
> Clipboard API. However, the current implementation eagerly fetches all MIME 
> types from the OS clipboard at read() time, regardless of which formats the 
> application actually needs. This feature defers the actual data retrieval 
> to getType() time, so the browser reads only the requested MIME types from 
> the OS clipboard when they are needed, improving performance and reducing 
> unnecessary data transfer.
>
> *Initial public proposal*
> https://github.com/WICG/proposals/issues/224
>
> *TAG review*
> None requested because this behavior has achieved consensus in the Editing 
> working group and matches what Safari already does
>
> *TAG review status*
> Not applicable
>
> *Goals for experimentation*
> NA
>
> *Risks*
>
>
> *Interoperability and Compatibility*
> *No information provided*
>
> *Gecko*: Positive (
> https://github.com/mozilla/standards-positions/issues/1279)
>
> *WebKit*: Shipped/Shipping (
> https://github.com/WebKit/standards-positions/issues/537)
>
> *Web developers*: Positive (https://github.com/WICG/proposals/issues/224) 
> Webkit 
> has already implemented this behavior
>
> *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 risks for WebView
>
>
> *Debuggability*
> No DevTools debugging support needed for this.
>
> *Will this feature be supported on all six Blink platforms (Windows, Mac, 
> Linux, ChromeOS, Android, and Android WebView)?*
> Yes
> It is supported on all platforms because it is purely a browser-internal 
> optimization that changes when existing OS clipboard APIs are called 
> (deferring from read() time to getType() time), without requiring any new 
> platform-specific clipboard capabilities or OS-level API changes.
>
> *Is this feature fully tested by **web-platform-tests* 
> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
> *?*
> No
> Added initial tests to WPT, but further coverage is currently blocked by 
> missing test infrastructure. Created an issue for that (
> https://issues.chromium.org/issues/508091414)
>
> *Flag name on about://flags*
> DeferOsClipboardReadCallToGetType
>
> *Finch feature name*
> *No information provided*
>
> *Non-finch justification*
> As previously collected in UseCounters 5684 and 5685, telemetry tracking 
> how often the clipboard changes between read and getType (or consecutive 
> getType calls) shows an extremely low usage percentage (~0.0004). This data 
> demonstrates that the risk of breaking existing workflows is negligible. 
> Consequently, a Finch rollout is unnecessary.
>
> *Rollout plan*
> Will ship enabled for all users
>
> *Requires code in //chrome?*
> False
>
> *Tracking bug*
> https://issues.chromium.org/issues/435051711
>
> *Estimated milestones*
> Shipping on desktop
> 149
> Shipping on Android
> 149
> Shipping on WebView
> 149
> Shipping on iOS
> 149
>
>
> *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/5203433409871872?gate=6255790323269632
>
> 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/JH0P153MB1062E1AE43E6CECD8926ED17D1072%40JH0P153MB1062.APCP153.PROD.OUTLOOK.COM
>  
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/JH0P153MB1062E1AE43E6CECD8926ED17D1072%40JH0P153MB1062.APCP153.PROD.OUTLOOK.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/4162c19e-98f8-4a20-9cc5-3f7db56bffa9n%40chromium.org.

Reply via email to