Chrome Officially Releases Chrome 130 Update For ChromeOS, Android, Linux, macOS And Windows
Google has officially released its latest Chrome 130 update to enhance the experience of Chrome browser, Android, Linux, macOS, and Windows users. Let’s not waste time and dive in to know the changes that arrive with this update.
Chrome 130 Update
CSS
- CSS Container Queries Flat Tree Lookup: This change is only relevant for shadow DOM where an element will now be able to see non-named containers inside shadow trees into which the element or one of its ancestors are slotted, even if the CSS rule does not use::part() or ::slotted().
- CSS Nesting: The nested declaration rule- Keeps bare declarations following a nested rule in their place, by wrapping those declarations in CSSNestedDeclarations rules during parsing.
- Full and Unprefixed box-decoration-break support- Adds support for box-decoration-break: clone both for inline fragmentation (line layout) and block fragmentation (pagination for printing and multicolor).
- Allow More Pseudo- Elements and Pseudo-classes after:: part()-CSS selectors that use the ::part() pseudo-element are allowed to have other CSS pseudo-elements (except ::part()) and many types of other CSS pseudo-classes after them. Combinators are still not allowed after::part(), and pseudo-classes that depend on tree structure are not allowed.
Web APIs
- Compression dictionary transport with shared Brotli and shared Zstandard- This feature adds support for using designated previous responses, as an external dictionary for content encoding compressing responses with Brotli or Zstandard.
- Concurrent Smooth scrollIntoView()-The scrollIntoView() method with behavior: “smooth” lets you create scroll containers that scroll to their descendants with a gentle scroll animation. This feature fixes Chrome’s implementation of the API so that ongoing scrollIntoView animations are not canceled by unrelated scrolls on other scroll containers. The feature also fixes cases where Chrome fails to scroll to a page’s fragment anchor because of a competing scrollIntoView that is invoked when the page loads.
- Document Picture-in-Picture- This adds a new parameter (preferInitialWindowPlacement) to the document picture-in-picture API that, when set to true, hints to the browser that it shouldn’t try to reuse the position or size of the previous document picture-in-picture from this site when opening this one.
- Improved error reporting in IndexedDB for large value read failures– Change to reporting for certain error cases that were previously reported with a DOMException and the message “Failed to read large IndexedDB value”. Chrome now raises a DOMException with the name “NotFoundError” when the file containing the data being read by an IDBRequest is missing from the disk so that sites can take the appropriate corrective action when an unrecoverable failure occurs. Corrective actions could include deleting the entry from the database, notifying the user, or re-fetching the data from servers.
- Keyboard focusable scroll containers– This feature makes scrollers without focusable children keyboard-focusable by default.
- Protected Audience Bidding and Auction Services– This feature, Protected Audience Bidding and Auction Services, outlines a way to allow Protected Audience computation to take place on cloud servers in a trusted execution environment, rather than running locally on a user’s device. Moving computations to cloud servers can help optimize the Protected Audience auction, to free up computational cycles and network bandwidth for a device.
- Support non-special scheme URLs- Now, Chromium’s URL parser parses non-special URLs correctly, following the URL Standard.
- WebAssembly JavaScript String Builtins– This feature exposes common JavaScript string operations for import into WebAssembly. This lets you create and manipulate JavaScript strings from WebAssembly without support within WebAssembly. This still allows for a similar performance as supported string references.
- Web Serial: Connected attribute and RFCOMM connection events– This feature adds a boolean SerialPort.connected attribute. The attribute returns true if the serial port is logically connected. For wired serial ports, a port is logically connected if the port is physically attached to the system. For wireless serial ports, a port is logically connected if the device hosting the port has any open connections to the host.
Rendering and graphics
- WebGPU: Dual-source blending– Adds the optional GPU feature “dual-source-blending” that enables combining two fragment shader outputs into a single frame buffer. This technique is particularly useful for applications that require complex blending operations, such as those based on Porter-Duff blend modes. By reducing the need for frequent pipeline state object changes, dual-source blending can enhance performance and flexibility.
Privacy
- Attribution Reporting API feature (Attribution Scopes)- This change is based on ad tech feedback and the need for more fine-grained filtering controls before the attribution process takes place. It lets API callers specify a field called “attribution scopes” which will be used for filtering before starting the regular attribution flow. This allows API callers more fine-grained control over the attribution granularity and the ability to receive proper attribution reports when there are multiple different advertisers or campaigns that all convert to the same destination site.
- Attribution Reporting API feature (debug key privacy improvement- This change helps to mitigate a potential privacy gap with debug keys.
Origin trials
- Language Detector API- A JavaScript API for detecting the language of text, with confidence levels.
- WebAuthn attestationFormats- Support the attestationFormats field from WebAuthn level 3. WebAuthn Level 3 supports a site expressing an ordered preference for credential attestation formats in the new attestationFormats field. This feature enables support for this on Android, where multiple formats can be supported by passkey providers.
Deprecations and removals
- Remove expected improvement in DelegatedInkTrailPresenter– The expected improvement attribute tells web developers how much improvement the DelegatedInkTrails API will provide to their current ink latency