Closed Bug 1693152 Opened 1 year ago Closed 2 months ago

[Bug] Autofill not working with Bitwarden

Categories

(GeckoView :: General, defect, P2)

Unspecified
Android

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1770010

People

(Reporter: csadilek, Assigned: m_kato)

Details

(Whiteboard: [geckoview:m91][geckoview:m92][geckoview:m93][geckoview:m95?])

From github: https://github.com/mozilla-mobile/fenix/issues/16583.

Steps to reproduce

  1. Go to any website with login field
  2. Choose Autofill with Bitwarden from the drop-down
  3. Select the login entry from Bitwarden

Expected behavior

Login should be put in.

Actual behavior

Nothing happens, fields stay blank.

Device information

  • Android device: Redmi K20 (Android 10)
  • Fenix version: Nightly 201114 17:01
  • Bitwarden version : 2.6.2

Change performed by the Move to Bugzilla add-on.

NB: Inline autofill via the keyboard works fine if the valve isn't locked and no application switch is required.

The problem here is that A-C calls GeckoView.releaseSession when the application stops (when switching to the Bitwarden app), which causes the autofill delegate to be reset or not work anymore when switching back to Fenix.

Calling releaseSession seems to be the right thing to do onStop. Is this a case GV needs to support or is there a way A-C can handle this?

Priority: -- → P2
Whiteboard: [geckoview:m89]
Whiteboard: [geckoview:m89] → [geckoview:m90]

FYI, as an interim

work-around 1

  1. After Step #3 you tab the user or pass input field again
  2. Bitwarden focuses and you select the entry again

Usually it gets filled in for me now

work-around 2

  1. After Step #3 while your vault is still unlocked you reload the page
  2. tab the user or pass input field again

There should now be one or more additional items besides "Auto-fill with Bitwarden" you can select from of logins for this website.

Hope that helps.

Whiteboard: [geckoview:m90] → [geckoview:m90?]
Whiteboard: [geckoview:m90?] → [geckoview:m91?]
Priority: P2 → P1
Whiteboard: [geckoview:m91?] → [geckoview:m91]
Rank: 5
Rank: 5 → 3

Ignore. Another report of this issue but through Dashlane: https://github.com/mozilla-mobile/fenix/issues/20052

(In reply to Albert Scheiner [:alberts] from comment #2)

FYI, as an interim

work-around 1

  1. After Step #3 you tab the user or pass input field again
  2. Bitwarden focuses and you select the entry again

Usually it gets filled in for me now

work-around 2

  1. After Step #3 while your vault is still unlocked you reload the page
  2. tab the user or pass input field again

There should now be one or more additional items besides "Auto-fill with Bitwarden" you can select from of logins for this website.

Hope that helps.

A third work-around if you have Android 11 and a vault password: Bitwarden has support for password auto-fill via the keyboard.

work-around 3

  1. Do NOT perform step 3 ("Select the login entry from Bitwarden"), press back to return to web content instead after unlocking.
  2. Observe that your keyboard has the in-lined password selector.
  3. Select a password from there.

(In reply to Christian Sadilek [:csadilek] from comment #1)

Calling releaseSession seems to be the right thing to do onStop. Is this a case GV needs to support or is there a way A-C can handle this?

With my work-around, I imagine releaseSession was still called but auto-fill worked, so maybe it's something else related?

It seems like this works indeed. My understanding is that when you do select an account in bitwarden, it returns a response so the autofill hint gets dismissed, but GV fails to receive that response because it's dormant. It seems like a timing issue because sometimes it works. It probably needs to be queued up to be propagated reliably.
With your workaround, no response is returned so the autofill hint remains active.
Another workaround is to enable the accessibility service from bitwarden, that works consistently but there might be limitations if your device is encrypted.

Whiteboard: [geckoview:m91] → [geckoview:m91][geckoview:m92]
Assignee: nobody → bugzeeeeee
Assignee: bugzeeeeee → nobody
Whiteboard: [geckoview:m91][geckoview:m92] → [geckoview:m91][geckoview:m92][geckoview:m93]

FYI, none of the workarounds work on Wayland/Linux, I have to copy-paste passwords all the time...

(In reply to Francois Guerraz from comment #6)

FYI, none of the workarounds work on Wayland/Linux, I have to copy-paste passwords all the time...

That's a completely unrelated issue, this bug is about Android's autofill API (across apps). For the browser extension, see https://bugzilla.mozilla.org/show_bug.cgi?id=1717760 and https://github.com/bitwarden/browser/issues/2000. Your problem should be fixed with the next release of the BW extension.

(In reply to novenary from comment #7)

That's a completely unrelated issue, this bug is about Android's autofill API (across apps). For the browser extension, see https://bugzilla.mozilla.org/show_bug.cgi?id=1717760 and https://github.com/bitwarden/browser/issues/2000. Your problem should be fixed with the next release of the BW extension.

Oh, thanks! Very helpful.

Whiteboard: [geckoview:m91][geckoview:m92][geckoview:m93] → [geckoview:m91][geckoview:m92][geckoview:m93][geckoview:m95?]
Priority: P1 → P2
Assignee: nobody → m_kato
Severity: -- → S3

This should be fixed by Bug 1770010.

Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1770010

It is. Thanks!

You need to log in before you can comment on or make changes to this bug.