Environment Verified In:
OS: Windows 10 x64
Browser: Firefox 68.0.1 (64-bit)
KeePass 2.42.1
WebAutoType: 6.2.0.0
What is expected to happen is when one makes a KeePass entry, and in the entry go to:
Edit Entry > Auto-Type > Target Window
and create at least two entries of the type 'Match against the URL of a page shown in a web browser'
then attempt to press the 'Global auto-type' keyboard combination, a KeePass window shows up requesting the user to choose which entry to select given it would typically match more than one Target Window.
However, the entries may or may not be exact matches, and may or may not include the wildcard asterix character, as some websites after entering in only a Username for example, then twiddle the URL to something slightly different to then accept the Password.
A completely fake example of Target Window entries:
www.example.com/login/
www.example.com/login/secondfactor/
This was noticed to not work with the most recent update of both KeePass and WebAutoType. This did work flawlessly in prior versions of WebAutoType and KeePass.
WORKAROUND: I clunky and onerous way to get around this is make completely separate, but duplicate entries, with only one Target Window each, and then set 'Always show global auto-type entry selection dialog'. However, when dealing with 200+ entries, it becomes too burdensome to maintain.
I have just tried this, and it seems to be working just fine for me.
I created a new entry and added two AutoType entries for it, one for http://www.example.com/login/ and one for http://www.example.com/login/secondfactor/
I then navigate to http://www.example.com/login/ and Global AutoType performs the AutoType sequence I defined for that. I navigate to http://www.example.com/login/secondfactor/ and Global AutoType performs the other sequence I defined. If I also set www.example.com as the URL field for the entry then I get the chooser dialog to pick between the main entry sequence, and the one for the specific URL.
Is that not what you are gettign?
AlexVallat, thanks for the quick follow up.
I just reproduced again. Using the following on Sourceforge Login site:
https://sourceforge.net/auth/
The two Target Window entries:
https://sourceforge.net/auth/*
https://sourceforge.net/auth/
The top one is the only one that triggers, and there is no window for me to choose which of the two I would like to use when I click the Global AutoType.
Hopefully this clears up the root cause.
Thanks for the additional info. I see the problem now, can you give the attached 6.2.1 a try and let me know if it resolves the issue for you?
I was having the same problem with a banking website which had been working previously. 6.2.1. fixes the problem. Many thanks.
Great, thanks for letting me know.
AlexVallant, 6.2.1 solves the problem on SourceForge login website!
AlexVallant, one quick 'odd ball' with 6.2.1. If I delete one of the two new entries, when I click the Global Auto-Type, it still shows both the deleted one, and the new one (no I don't have two separate entries that overlap). I tried deleting the History of the entries, and all items in Recycle Bin, no change.
Hence, while the situation is still improved, there are still remaining issues to resolve with 6.2.1.
That's really weird. Could you try editing the sequence before you delete it, add a few extra keystrokes at the start, so we can verify that it really is pulling a deleted sequence from somewhere?
Done, same problem.
Last edit: AlexVallat 2019-08-05
I'm not sure what's going on, then. You have closed the Entry window before attempting the global auto-type, right? The changes aren't saved until you hit OK.
AlexVallat, yes. I'm not doing anything obviously silly here.
Last edit: AlexVallat 2019-08-05
Does this state persist if you save, close, and re-open the database? If so, can you create a minimal example database that reproduces the issue? Create a new empty database with password 1234 so we can test and share data without affecting your real database.
Create an entry, add two auto-type sequences to it, each with a different custom sequence. Verify that you get a dialog to pick from both sequences.
Delete one of the sequences.
Here, I get just one sequence when auto-typing, no dialog. From what I understand, at this point, you still get the dialog to pick from both sequences, including the deleted one. But, if you open the entry again, you still only see one sequence in the list. Correct?
At this point, if you save, close and re-open the database, does that behaviour continue? If so, please send the database to me and I will investigate.
AlexVallat:
1a) Does this state persist if you save, close, and re-open the database?
Yes.
1b) If so, can you create a minimal example database that reproduces the issue?
See attached. Password is:
bugdemo
1c) Create an entry, add two auto-type sequences to it, each with a different custom sequence. Verify that you get a dialog to pick from both sequences.
With two different Target Window entries of:
https://sourceforge.net/auth/*
https://sourceforge.net/auth/
If the custom sequences are different, then the dialog appears.
However, if they are the same, it does not.
This behavior is a regression from prior versions of WAT and KP (i.e. IDK which one or both are root cause here).
From the example database, the entry has two custom auto-type sequences in it, but they are both the same sequence. If the sequences are identical, KeePass won't ask you to choose between them.
To test the issue with deletion, I edited the sequences to be A, B, and the main sequence for the entry C. If I go to https://sourceforge.net/auth then I get a picker dialog showing all three sequences (as the title matches too). Deleting one of the custom sequences and repeating gives me a picker dialog showing only two - the remaining custom sequence and the main sequence for the entry.
All this is correct behaviour. If you don't want KeePass to match on title, then go to Options, Advanced and uncheck "An entry matches if its title is contained in the target window title"
AlexVallat, thanks for the quick response.
This has nothing to do with the regression I'm reporting.
With respect to what I'm reporting, not in any way. The behavior is completely different than prior versions of WAT+KP.
This was already unchecked prior to reporting. Same thing, same problem.
As I understood it, the issue we are investigating is that if you delete a sequence, it still shows up in the picker as if it had not been deleted. This is not reproduced with the test database, I see no additional unexpected sequences when autotyping and if I delete a sequence then it no longer shows up.
If you are raising a separate issue that you want KeePass to offer the choice dialog even if the sequences are all identical then you will need to post that on the KeePass forums, but I suspect the answer will be "as intended". I know there is a setting to make it always show the picker even if there is only one match, perhaps that might be helpful?
AlexVallat, thanks again for being on top of this so quickly.
This is one of the issues identified but not the originally reported
problem experienced.
Originally reported problem experienced was the modification (not
deletion) of a Custom Sequence within one Entry with multiple Target
Windows that may or may not be the same, or contain wildcards. The
deletion piece was uncovered later (seems related but IDK).
I am, but not the way you are framing it. Historically, (i.e. since I
started using KeePass back in 2009) if one had the above environment
then the GUI window picker would only show up when more than one Target
Window entry matches. This behavior is regardless of either Custom
Sequence similarity, wildcards in use, or the installation/lack of WAT.
This is what has changed in a recent update, and its not 'as designed'
unless usability regressions are intentional. :D I read the release
notes of both KP+WAT prior to updating, it did not speak to this at all.
The WAT update you provided improved the situation, but there is still
remaining issue(s) outstanding of unknown root cause.
I am aware of this as I mentioned this as a WORKAROUND in original
submission comment. ;)
Last edit: AlexVallat 2019-08-07
The problems we've been discussing are:
1) If a single entry had multiple different URL-matching sequences, and more than one of them matched the current URL, then only one of them would be counted as matching. This is fixed in 6.2.1
2) If an entry has multiple URL-matching sequences, and one is deleted, that deleted sequence is still matched against. This has not been reproduced, either by me or by your test database. If you can demonstrate steps that result in a unique sequence being deleted and still being matched then I can investigate further, otherwise I'm at a dead end here.
3) You want to get a picker dialog with multiple identical matching sequences for the same entry. As far as I can tell this has never been the case, but if you want to argue otherwise then better take it to the KeePass forums, as it's unrelated to WebAutoType.