mui / mui/base-ui

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

Aperta
#1,663 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
component: popover type: enhancement
Lingua principale
TypeScript
Stelle
10.9k
Fork
543
Merge medio
2g 1h
PR unite (30g)
114

Descrizione

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.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
css, react, typescript
Ambito
frontend
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.