Skip to content

Conversation

@fabiankaegy
Copy link
Member

@fabiankaegy fabiankaegy commented Nov 19, 2025

What?

Closes #73424

This pull request updates the behavior and visual experience of menu popovers used within the DataViews component. The most significant changes involve switching menu popovers to non-modal mode and adjusting animation durations for smoother transitions.

Why?

To make the UI feel more snappy.

How?

Updating the animation duration and switching to the non modal mode which allows interacting with other elements whilst dropdown are open

Screenshots or screencast

Before:

CleanShot.2025-11-19.at.09.33.52.mp4

After:

CleanShot.2025-11-19.at.09.33.26.mp4

@fabiankaegy fabiankaegy self-assigned this Nov 19, 2025
@fabiankaegy fabiankaegy added [Type] Enhancement A suggestion for improvement. [Feature] DataViews Work surrounding upgrading and evolving views in the site editor and beyond [Package] DataViews /packages/dataviews labels Nov 19, 2025
@github-actions
Copy link

github-actions bot commented Nov 19, 2025

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: fabiankaegy <[email protected]>
Co-authored-by: ntsekouras <[email protected]>
Co-authored-by: jasmussen <[email protected]>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@fabiankaegy fabiankaegy force-pushed the fix/data-views-precieved-performance branch from 3825a21 to c414644 Compare November 19, 2025 08:48
@github-actions
Copy link

Flaky tests detected in c414644.
Some tests passed with failed attempts. The failures may not be related to this commit but are still reported for visibility. See the documentation for more information.

🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/19495304677
📝 Reported issues:

}
/>
<Menu.Popover>
<Menu.Popover modal={ false }>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need portal preventBodyScroll.

portal to avoid this:

Screen.Recording.2025-11-19.at.12.42.09.PM.mov

preventBodyScroll to avoid this (if we only have set portal:

Screen.Recording.2025-11-19.at.12.43.28.PM.mov

We need to check for similar cases in the updated components. For example this seems a bit weird:

Screen.Recording.2025-11-19.at.12.44.08.PM.mov

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for testing :)

portal makes sense and I already had it in all the places I noticed issues like this 👍 Updating to apply it to this here also.

preventBodyScroll I've tried adding it but it doesn't seem to have any effect 🤔 Could it be that it only locks actual body scrolling but not other scroll regions?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I've verified that this is the issue.

Since I cannot really see a good way to solve this without a bunch of custom complexity I've reverted the two menus (filter and layout) to the modal behavior. All the other ones like inline actions and table headers still use the new behavior. All with portal and without the preventBodyScroll prop 👍

DURATION: {
IN: '400ms',
OUT: '200ms',
IN: '200ms',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the 200ms might be okay, but not sure if it becomes 'clanky' for bigger menus. I don't have some specific use case in mind, but just noting that this affects every menu consumer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Feature] DataViews Work surrounding upgrading and evolving views in the site editor and beyond [Package] DataViews /packages/dataviews [Type] Enhancement A suggestion for improvement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DataViews button interactions feel slightly "laggy"

3 participants