Improved delayed saving#173
Open
difanta wants to merge 2 commits into
Open
Conversation
…ery; allow parsing multiple contexts to discover delayed usernames;
…w duplicate fields with same autofill id
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Delayed saving did not work very well after #162, here are some improvements that make it work in most cases.
The saving logic now goes as follows:
When building the SaveInfo object while responding to a fill request:
When processing a save request, meaning the user interacted with the dialog and pressed "save":
The behavior of the delayed save depends on the specific site, and even more in getting the parsing correct. In general if the DELAY_SAVE flag is set, the save dialog will not appear in the current page but only in the next one, if the user navigates away form the application and comes back after a while that information is lost. Also if the flag is not set when it should, information about the first page might be lost depending on what the system decides to send to the next fill request (only if the flag is set the information is guaranteed to be sent). And finally if the flag is set when it shouldn't it prevents the save dialog (eg. username only logins), but there is no workaround for this that I'm aware.