# Google Chrome 138 - Product: Google Chrome (https://whatsnew.fyi/product/google-chrome) - Vendor: Google - Date: 2025-06-24 - Version: 138 - Original notes: https://developer.chrome.com/release-notes/138 - Permalink: https://whatsnew.fyi/product/google-chrome/releases/138 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — Add CSS abs() and sign() functions to compute absolute values and sign of numeric values - **added** — Add CSS progress() functional notation to represent position between two calculations - **added** — Add CSS sibling-index() and sibling-count() functions to style elements based on their position among siblings - **added** — Add CSS stretch sizing keyword for elements to fill their containing block's available space - **added** — Add CSS env variable to expose user's preferred OS-level font scale - **added** — Add Web Serial API over Bluetooth RFCOMM support on Android devices - **added** — Add Viewport Segments Enumeration API to adapt web layout for foldable devices - **changed** — Update QuotaExceededError to be a DOMException derived interface with optional quota and requested properties - **added** — Add Translator API to provide language translation capabilities to web pages - **added** — Add Language Detector API for detecting language of text with confidence levels Stable release date: June 24th, 2025 Unless otherwise noted, the following changes apply to Chrome 138 stable channel release for Android, ChromeOS, Linux, macOS, and Windows. ##### CSS and UI ###### CSS Sign-Related Functions: abs(), sign() The sign-related functions abs() and sign() compute various functions related to the sign of their argument. The abs(A) function contains one calculation A, and returns the absolute value of A, as the same type as the input: if A's numeric value is positive or 0⁺, just A again; otherwise -1 * A. The sign(A) function contains one calculation A, and returns -1 if A's numeric value is negative, +1 if A's numeric value is positive, 0⁺ if A's numeric value is 0⁺, and 0⁻ if A's numeric value is 0⁻. The return type is a , made consistent with the type of the input calculation. MDN Docs:abs() | Tracking bug #40253181 | ChromeStatus.com entry | Spec ###### Interpolation progress functional notation: CSS progress() function The progress() functional notation returns a value representing the position of one calculation (the progress value) between two other calculations (the progress start value and progress end value). The progress() function is a math function. Tracking bug #40944203 | ChromeStatus.com entry | Spec ###### CSS sibling-index() and sibling-count() The sibling-index() and sibling-count() functions can be used as integers in CSS property values to style elements based on their position among its siblings, or the total number of siblings respectively. These functions can be used directly as integer values, but more interestingly inside calc() expressions. Tracking bug #40282719 | ChromeStatus.com entry | Spec ###### CSS stretch sizing keyword A keyword for CSS sizing properties (for example, width and height) that lets elements grow to exactly fill their containing block's available space. It is similar to '100%', except the resulting size is applied to the element's margin box instead of the box indicated by box-sizing. Using this keyword lets the element keep its margins while still being as large as possible. An unprefixed version of -webkit-fill-available. Tracking bug #41253915 | ChromeStatus.com entry | Spec ###### CSS env variable for OS-level font scale Exposes a user's preferred font scale to CSS. Without this, it's not practical for a page to detect if the user has changed their preferred font size using the Operating System's preferences. This CSS environment variable will reflect the scale chosen by the user. Tracking bug #397737223 | ChromeStatus.com entry | Spec ##### Devices ###### Web serial over Bluetooth on Android This feature lets web pages and web apps connect to serial ports over Bluetooth on Android devices. Chrome on Android now supports Web Serial API over Bluetooth RFCOMM. Existing enterprise policies (DefaultSerialGuardSetting, SerialAllowAllPortsForUrls, SerialAllowUsbDevicesForUrls, SerialAskForUrls and SerialBlockedForUrls) on other platforms are enabled in future_on states for Android. All policies except SerialAllowUsbDevicesForUrls will be enabled after the feature is enabled. SerialAllowUsbDevicesForUrls will be enabled in a future launch after Android provides system level support of wired serial ports. Tracking bug #375245353 | ChromeStatus.com entry | Spec ###### Viewport Segments Enumeration API The Viewport Segments API allows developers to adapt their web layout to target foldable devices. The viewport segments defines the position and dimensions of a logically separate region of the viewport. Viewport segments are created when the viewport is split by one or more hardware features (such as a fold or a hinge between separate displays) that act as a divider; segments are the regions of the viewport that can be treated as logically distinct by the developer. Tracking bug #1039050 | ChromeStatus.com entry | Spec ##### JavaScript ###### Update QuotaExceededError to a DOMException derived interface Previously, when the web platform want _[Truncated at 4000 characters — full notes: https://developer.chrome.com/release-notes/138]_