mui / mui/base-ui

[popover] Allow `Positioner` parts to be omitted for native CSS anchoring

オープン
#1,663 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る
component: popover type: enhancement
主要言語
TypeScript
スター
10.9k
フォーク
543
平均マージ
2日 1時間
マージ済み PR(30日)
114

説明

When trying to use native CSS anchor positioning by simply omitting the `Positioner` part to position `Popup` with CSS `anchor`, an error is thrown:

> Base UI: PopoverPositionerContext is missing. PopoverPositioner parts must be placed within .

Native CSS Anchoring doesn't support `Arrow` yet, but it can optionally consume the context instead of throwing for future use. `Popup` doesn't need to consume the positioner context at all (`FloatingFocusManager` can work with `FloatingRootContext` from the root instead).

This way, the Floating UI logic doesn't need to be included in the bundle once CSS anchoring is widespread if they just omit the `Positioner` part in their JSX.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start by tracing the Popover.Positioner and Popup parts, especially PopoverPositionerContext and FloatingFocusManager. Check how omitting Positioner currently triggers the missing-context error, then verify that CSS anchor positioning works without Floating UI while Arrow can consume the context when present.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
css, react, typescript
領域
frontend
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。