From 0293d12dce50980a7a979e0aaf77ec01b0861807 Mon Sep 17 00:00:00 2001 From: Alexandre Fauquette Date: Mon, 24 Oct 2022 10:45:27 +0200 Subject: [PATCH] [pickers] ignore miliseconds in mask logic --- .../x-date-pickers/src/internals/hooks/useMaskedInput.tsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/x-date-pickers/src/internals/hooks/useMaskedInput.tsx b/packages/x-date-pickers/src/internals/hooks/useMaskedInput.tsx index 80d2b7ee3c36..965399773eaa 100644 --- a/packages/x-date-pickers/src/internals/hooks/useMaskedInput.tsx +++ b/packages/x-date-pickers/src/internals/hooks/useMaskedInput.tsx @@ -95,7 +95,13 @@ export const useMaskedInput = ({ const newParsedValue = rawValue === null ? null : utils.date(rawValue); const isAcceptedValue = rawValue === null || utils.isValid(newParsedValue); - if (!localeHasChanged && (!isAcceptedValue || utils.isEqual(innerInputValue, newParsedValue))) { + const innerEqualsParsed = + innerInputValue === null + ? newParsedValue === null + : newParsedValue !== null && + Math.abs(utils.getDiff(innerInputValue, newParsedValue, 'seconds')) === 0; + + if (!localeHasChanged && (!isAcceptedValue || innerEqualsParsed)) { return; }