File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -191,7 +191,12 @@ export function basicField (
191191 field . addEventListener (
192192 'change' ,
193193 function ( _e ) {
194- if ( deferWhileFocused && dom . activeElement === field ) return
194+ if ( deferWhileFocused && dom . activeElement === field ) {
195+ if ( field . dataset ) {
196+ field . dataset . deferredChange = 'true'
197+ }
198+ return
199+ }
195200 // i.e. lose focus with changed data
196201 if ( params . pattern && ! field . value . match ( params . pattern ) ) return
197202 const disabledForSave = ! deferWhileFocused
@@ -273,5 +278,20 @@ export function basicField (
273278 } ,
274279 true
275280 )
281+ field . addEventListener (
282+ 'blur' ,
283+ function ( _e ) {
284+ if (
285+ deferWhileFocused &&
286+ field . dataset &&
287+ field . dataset . deferredChange === 'true'
288+ ) {
289+ delete field . dataset . deferredChange
290+ const event = new Event ( 'change' , { bubbles : true } )
291+ field . dispatchEvent ( event )
292+ }
293+ } ,
294+ true
295+ )
276296 return box
277297}
You can’t perform that action at this time.
0 commit comments