Skip to content

Conversation

@michelengelen
Copy link
Member

@michelengelen michelengelen commented Oct 21, 2025

This should keep the invalid state consistent during different phases of the input cycle in the pickers.

This fixes some validation bugs:

Consistent invalid field state
Screenshot 2025-10-30 at 14 50 57

Invalid state "shuffling"
Before:

Screen.Recording.2025-10-30.at.14.52.48.mov

After:

Screen.Recording.2025-10-30.at.14.53.05.mov

Fixes #17967
Fixes #18039
Fixes #18299
Fixes #19777

@michelengelen michelengelen self-assigned this Oct 21, 2025
@michelengelen michelengelen added type: regression A bug, but worse, it used to behave as expected. scope: pickers Changes related to the date/time pickers. labels Oct 21, 2025
@mui-bot
Copy link

mui-bot commented Oct 21, 2025

Deploy preview: https://deploy-preview-20040--material-ui-x.netlify.app/

Bundle size report

Bundle Parsed size Gzip size
@mui/x-data-grid 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-pro 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-premium 0B(0.00%) 0B(0.00%)
@mui/x-charts 0B(0.00%) 0B(0.00%)
@mui/x-charts-pro 0B(0.00%) 0B(0.00%)
@mui/x-charts-premium 0B(0.00%) 0B(0.00%)
@mui/x-date-pickers 🔺+394B(+0.17%) 🔺+119B(+0.19%)
@mui/x-date-pickers-pro 🔺+382B(+0.12%) 🔺+133B(+0.16%)
@mui/x-tree-view 0B(0.00%) 0B(0.00%)
@mui/x-tree-view-pro 0B(0.00%) 0B(0.00%)

Details of bundle changes

Generated by 🚫 dangerJS against 97c9771

@flaviendelangle flaviendelangle removed the request for review from LukasTy October 28, 2025 14:53
Copy link
Member

@siriwatknp siriwatknp left a comment

Choose a reason for hiding this comment

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

From a rough review, I see:

  • some comments are not necessary as the code already explain the logic
  • a PR description would be nice to explain how this PR fixes a lot of issues at the same time.

I will do intensive review soon.

});

it('keeps aria-invalid=true while spinning year when month is invalid (non-accessible DOM)', async () => {
// moment and luxon validation seem to not work
Copy link
Member

Choose a reason for hiding this comment

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

That's problematic 😆

Could you elaborate on what doesn't wort and if we can find a workaround?

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

Labels

scope: pickers Changes related to the date/time pickers. type: regression A bug, but worse, it used to behave as expected.

Projects

None yet

4 participants