Hi @Vincent<mailto:[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]<mailto:[email protected]>> wrote: Contact emails [email protected]<mailto:[email protected]>, [email protected]<mailto:[email protected]>, [email protected]<mailto:[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]<mailto:[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/JH0P153MB10626D8447827BB28377C985D1032%40JH0P153MB1062.APCP153.PROD.OUTLOOK.COM.
