Skip to content

Conversation

@mdo
Copy link
Member

@mdo mdo commented Dec 11, 2025

This is basically saving a checkpoint for ourselves in case we want to revisit. I don't think it'll work out unfortunately for v6 because the native feature support and the polyfill just isn't flexible for our needs. The biggest concern around adopting Popover API for our dropdowns, popovers, and tooltips is that they ALL go into the special top-layer of browsers. This isn't logical or useful for us because we need to control the placement, layering, etc of these relevant components.

Not to be merged.

mdo added 2 commits November 14, 2025 22:09
BREAKING CHANGE: Popper.js is no longer a dependency. Dropdowns, tooltips,
and popovers now use native CSS Anchor Positioning with a polyfill fallback.

JavaScript:
- Add positioning.js utility with responsive placement support
- Rewrite dropdown.js to use anchor positioning and popover attribute
- Rewrite tooltip.js to use anchor positioning
- Update popover.js with data-api click handler
- Remove Popper.js imports and configuration options
- Add responsive placement syntax (e.g., "bottom md:top lg:right-start")

SCSS:
- Add _anchor-positioning.scss with base styles for positioned elements
- Update dropdown, tooltip, and popover styles for anchor positioning
- Add b-dropdown custom element support

Package:
- Replace @popperjs/core with @oddbird/css-anchor-positioning (optional polyfill)

Docs:
- Update dropdowns, tooltips, and popovers documentation
@mdo mdo added this to v6.0.0 Dec 11, 2025
@mdo mdo requested review from a team as code owners December 11, 2025 18:05
@github-project-automation github-project-automation bot moved this to Inbox in v6.0.0 Dec 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Inbox

Development

Successfully merging this pull request may close these issues.

2 participants