Open Bug 1948077 Opened 6 months ago Updated 3 months ago

Update filledResult in FormAutofillParent on (non user-modified) clearing

Categories

(Toolkit :: Form Autofill, task, P3)

task

Tracking

()

People

(Reporter: janika, Unassigned)

Details

this.filledResult in FormAutofillParent is set when elements are filled on autocompletion. After autocompletion the elements have the filledState FIELD_STATES.AUTO_FILLED. When the user modifies a filled element, its filledState is updated to FIELD_STATES.NORMAL in onFieldFilledModified.

When the form is cleared by the user agent we also call onFieldFilledModified for each cleared field which sets its filledState back to FIELD_STATES.NORMAL. But this is actually misleading because onFieldFilledModified is supposed to be called when the user modifies an element, not the user agent. This will be fixed in Bug 1946812.

The way this.filledResult is set causes problems for dynamically changing forms. Let's say a form is autocompleted and due to some field modification the form exchanges or hides away fields. Currently this causes this.filledResult to be in a state in which removed fields are not removed from the map and it could be that invisible filled fields are not cleared because they are not included in the detected fieldDetails anymore.

P3 of Bug 1837161 addresses part of the problem and caches previously filled and "currently undetected" elements. They are then cleared on the next user initiated clearing process.

Severity: -- → N/A
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.