Intent to Ship: Focusgroup

176 views
Skip to first unread message

Jacques Newman

unread,
Apr 24, 2026, 9:55:03 PM (18 hours ago) Apr 24
to blin...@chromium.org
Contact emailsjane...@microsoft.com, leo...@microsoft.com, mason...@google.com

Explainer
Specification
Summary
The focusgroup HTML attribute gives composite widgets native arrow key navigation, a guaranteed tab stop, and last-focused memory, replacing hand-coded roving tabindex scripts. Authors set one attribute and the browser handles focus movement, axis constraints, and wrap behavior. 

In the following example, no JS is needed to provide arrow-key navigation across the toolbar:
​```​
<div focusgroup="toolbar wrap" aria-label="Formatting”> 
  <button>Bold</button>
  <button>Italic</button>
  <button>Underline</button>
</div>
```

Blink component

Web Feature ID

n/a

Motivation

By providing this primitive built-in the browser, authors will be able to provide this functionality without relying on custom solutions that often lead to a lack of consistency, accessibility, and interoperability.

Initial public proposal

MSEdgeExplainers/Focusgroup/explainer.md at main · MicrosoftEdge/MSEdgeExplainers (initial proposal is now outdated)

TAG review

https://github.com/w3ctag/design-reviews/issues/1152

TAG review status

Pending

TAG review is open with positive engagement from reviewers; Mozilla's standards position is now positive, and WebKit's device-independence and testability concerns have either been addressed or are being explored.

Origin Trial Name

focusgroup

Goals for experimentation

Test out the new design of the "focusgroup" attribute and get feedback from developers.

Chromium Trial Name

Focusgroup

Origin Trial documentation link

https://open-ui.org/components/scoped-focusgroup.explainer

WebFeature UseCounter name

kFocusgroup, see: Chrome Platform Status

Risks


Interoperability and Compatibility
Since the behavior can be polyfilled, compatibility risk is reduced. When not supported on a given platform, developers can fall back to the polyfill implementation.

Gecko: Positive (
https://github.com/mozilla/standards-positions/issues/1348)

WebKit: No signal (
https://github.com/WebKit/standards-positions/issues/171)

Web developers: Positive 

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, it is a new API.


Debuggability
Dev tools error logging is supported for various invalid combinations of focusgroup values in HTML.

Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?
Yes
Supported on all platforms but requires a keyboard or other device with directional arrows.

Is this feature fully tested by web-platform-tests?
Flag name on about://flags
n/a

Finch feature name
Focusgroup

Rollout plan
Will ship enabled for all users

Requires code in //chrome?
False

Tracking bug
Availability expectation
Mozilla has a positive standards position (April 2026) but hasn't announced implementation plans. WebKit has testability concerns that are being addressed.

Adoption expectation
The maintainers of Fluent UI Web Components are integrating this feature to be used in their next major version (V3), which is expected to ship in the coming months.

Adoption plan
The polyfill (https://www.npmjs.com/package/@microsoft/focusgroup-polyfill) will aid adoption for developers who want to start using the feature before wide availability. 
https://developer.chrome.com/blog/focusgroup-rfc was published to both request for feedback and to raise awareness of the feature.

Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function?

No

Estimated milestones
Shipping on desktop
150
Origin trial desktop first
146
Origin trial desktop last
149
DevTrial on desktop
146
Shipping on Android
150
Origin trial Android first
146
Origin trial Android last
149
DevTrial on Android
146
Shipping on WebView
150


Anticipated spec changes


Additional behavior tokens for additional functionality may be added later, but this is designed to be possible in a fully backwards-compatible way, see: Full list of Open-UI issues with the focusgroup tag


Link to entry on the Chrome Platform Status
Links to previous Intent discussions
This intent message was generated by Chrome Platform Status.


Reply all
Reply to author
Forward
0 new messages