-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Open
Labels
[Package] Components/packages/components/packages/components[Type] EnhancementA suggestion for improvement.A suggestion for improvement.[Type] Tracking IssueTactical breakdown of efforts across the codebase and/or tied to Overview issues.Tactical breakdown of efforts across the codebase and/or tied to Overview issues.
Description
The recent refactor of the Popover component to use floating ui
has caused a few regressions, and still feels partially incomplete.
Known regressions (either issues, or PRs containing a fix):
- Fix customizer block toolbar after popover refactor #41312
-
CustomGradientPicker
:ColorPicker
popover is glitchy (size and position) #41353 - Unable to select colors on small screens #41894
- Tooltip: Fix positioning by anchoring to child element #41268
- LinkControl UI goes off screen #42003
- Popover: pass missing anchor ref to the getAnchorRect callback prop #42076
- Popover:
expandOnMobile
styling is broken #42631 - Popover arrow not working properly in the latest versions #42820
- Popover: make sure that ownerDocument is always defined #42886
- Popover: anchor correctly to parent node when no explicit anchor is passed #42971
- ColorPalette, GradientPicker: fix color picker popover positioning #42989
- Fix block toolbar offset in site editor when toggling sidebars #43172
- Popover: fix and improve opening animation, use framer motion #43186
- Fix popover glitch that results in incorrect toolbar positioning in site editor #43267
- Popover: make sure offset middleware always applies the latest frame offset values #43329
- Site editor: do not show scrollbar when toolbar overflows the editor wrapper #43332
- Dropdown: anchor popover to the dropdown wrapper (instead of the toggle) #43377
- Fix legacy widget form positioning in customizer #43297
- Block Toolbar Regression - Toolbar obstructs selected blocks. #41575 : related PRs:
- Site editor: Block settings dropdown remains in place when scrolling #42725
- Block toolbar positioned under block in the site editor #43541
- Popover: make more reactive to prop changes, avoid unnecessary updates #43335
- User mention suggestions can't be exited from within a list block #43063
- Padding visualizers do not work properly in the Site Editor #41823
- Customize widgets: Link Popover not visible in full (Entire toolbar not visible) #41739
- Mover control: Block toolbar no longer sticks to block that's being moved until you scroll #44220
- Popover: fix limitShift logic by adding iframe offset correctly (and a custom shift limiter) #42950
- Block toolbar sometimes positioned incorrectly after dragging and dropping a block #44281
- Popover component overlay not fully visible in Customizer #43678
Improvements wish list:
- Improve code readability by adding more inline comments (Popover: tidy up code 🧹 , add more comments #42944)
- Improve Storybook examples (Popover: rewrite Storybook examples using controls #42903)
- Popover: rework props around shift, filp and resize behavior #43191
- There are currently many ways of passing an
anchor
, we should settle on a few, refactor all components and mark the other legacy approaches as deprecated - Legacy
position
prop: - We should untangle the different
onClose
-like callbacks and unify them to just one callback (link) - We should refactor all usages of the
Popover
using CSS margins and try to refactor them to use theoffset
prop instead - Similarly, we should move away from the two other
__unstable
props:-
__unstableObserveElement
(included in Popover: enable auto-updating every animation frame #43617) -
__unstableSlotName
-
- Add a popover
variant
prop and refactor popovers to use it, deprecateisAlternate
#45137 (see convo) - Find a better way to make widget editor popovers use
position: fixed
. (see Fix popover stacking in the customize widgets editor #44282 for context) - Support for RTL opening animations
- In the context of all these changes, we could:
- rewrite the component to TypeScript and update the README
- rewrite the component's styles to use Emotion
- rewrite the current unit tests with modern testing library features
- Add more tests (both via RTL and via experimental viz reg)
mtias and talldanMamaduka and ntsekouras
Metadata
Metadata
Assignees
Labels
[Package] Components/packages/components/packages/components[Type] EnhancementA suggestion for improvement.A suggestion for improvement.[Type] Tracking IssueTactical breakdown of efforts across the codebase and/or tied to Overview issues.Tactical breakdown of efforts across the codebase and/or tied to Overview issues.