fix: (regression 0.48.0) admin login autofill not working on chrome mobile

Massimo Melina committed Feb 10, 2024 at 20:44 UTC dca9311a92aae46a593da56a40d152d8fe1cc414
1 file changed +4 -2
mui-grid-form/StringField.ts
+4 -2
@@ -32,6 +32,7 @@ export function StringField({ value, onChange, min, max, required, setApi, typin
32 lastChange.current = normalized
33 }, [normalized])
34 const valueFocusing = useRef<string | undefined>()
35 + const autoFillDetected = useRef(false)
36 const render = (params: any) => h(TextField, {
37 fullWidth: true,
38 InputLabelProps: state || props.placeholder ? { shrink: true } : undefined,
@@ -46,12 +47,13 @@ export function StringField({ value, onChange, min, max, required, setApi, typin
47 val = res
48 }
49 setState(val)
49 - if (typing || valueFocusing.current === undefined)
50 + if (typing || autoFillDetected.current || valueFocusing.current === undefined)
51 go(ev, val)
52 },
53 onKeyDown(ev) {
54 props.onKeyDown?.(ev)
54 - if (ev.key === 'Enter' || ev.code === undefined) // undefined on autofill (chrome116)
55 + autoFillDetected.current = ev.code === undefined
56 + if (ev.key === 'Enter')
57 go(ev)
58 },
59 onFocus(ev) {