Some typed chars get eaten by Quantum Bar autofill

RESOLVED FIXED in Firefox 68

Status

()

defect
P1
normal
RESOLVED FIXED
4 months ago
4 months ago

People

(Reporter: mak, Assigned: adw)

Tracking

unspecified
Firefox 68
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox-esr60 unaffected, firefox66 disabled, firefox67 disabled, firefox68+ fixed)

Details

Attachments

(1 attachment)

This seems to be a recent regression, probably related to the autofill placeholder, not sure though.

When I type a bookmark keyword that is also the start of an autofill entry, the last letter gets eaten.
For example if I create a "go" keyword, and I type "go" it gets autofilled to g[oogle] instead of go[ogle] and when I press space to type the word to search with the go keyword, I end up on "g word"

Drew, could you please have a look at this?

Flags: needinfo?(adw)

It seems to also happen with dots, if I type "192." I get "192[.168.1.1]" instead of "192.[168.1.1]"

And also token aliases, If I type @amazon I end up at @amazo[n]

Duplicate of this bug: 1538186
Assignee: nobody → adw
Status: NEW → ASSIGNED
Flags: needinfo?(adw)

_autofillValueOnInput correctly uses the placeholder string as the autofilled value, but it incorrectly uses _lastSearchString as the current input value. _lastSearchString at that point is -- yes -- the previous search string, not what the user has just typed. So when _autofillValueOnInput sets selectionStart to _lastSesarchString.length, the length is one char less than what it should be.

But why does that mess up only the last char typed and not every char? Because when the first result comes in, we correctly autofill it. It's only when the first result is not an autofill result that the incorrect placeholder autofill sticks around -- e.g., just after you type the last char in an @ alias.

This patch just gets rid of _autofillValueOnInput and inlines the body in _maybeAutofillOnInput.

Duplicate of this bug: 1538334
Pushed by dwillcoxon@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/565644972ec2
Fix autofill when typing the last character of an autofilled value. r=mak
Status: ASSIGNED → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 68

if we uplift the other fixes we'll need this one too, right?

Blocks: 1529931

(In reply to Marco Bonardo [::mak] from comment #9)

if we uplift the other fixes we'll need this one too, right?

Marco knows the answer, but just for others and posterity, it looks like we're now targeting beta 68 for experiments, not 67, so we don't need to uplift this.

https://hg.mozilla.org/projects/ash/rev/565644972ec23f4a8e54b60efc793b0e23e6d84a
Bug 1538117 - Fix autofill when typing the last character of an autofilled value. r=mak
You need to log in before you can comment on or make changes to this bug.