Closed Bug 1756387 Opened 9 months ago Closed 9 months ago

The "Search Logins" input , "Sign in to sync" button and menu button cannot be accessed with keyboard navigation

Categories

(Firefox :: about:logins, defect, P2)

defect

Tracking

()

VERIFIED FIXED
100 Branch
Tracking Status
firefox-esr91 --- unaffected
firefox97 --- wontfix
firefox98 --- wontfix
firefox99 --- wontfix
firefox100 --- verified

People

(Reporter: janvi01, Assigned: tgiles)

References

(Regression)

Details

(Keywords: access, regression, Whiteboard: [access-s3])

Attachments

(2 files)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36

Steps to reproduce:

  1. Navigate to the “about: logins" page.
  2. Press the "Tab" key
  3. Observe the behavior for the above-mentioned buttons.

Actual results:

The "Search Logins" input, "Sign in to sync" (or user when logged in) button, and menu button cannot be focused using the tab key, (it is only navigable once initially)

Expected results:

It should be navigable/focused using the keyboard tab key.

Component: Untriaged → about:logins
Flags: needinfo?(sgalich)
Attached video demo.mov

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0

Hi,

Reproduced the issue in release 97, beta 98 and latest nightly 99.0a1 (2022-02-22) using Windows 10 and macOS 10.15. Indeed, after the first keyboard navigation on the page, the "Search Logins" input, "Sign in to sync" (or user when logged in) button, and menu button are not focused anymore using the tab key.
! Note that you can get them in focus using shift + tab, navigating backward.

This is a recent regression from Fx96. Here is the pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=86a37f4b3eea57905363c108b5331b2725a954f2&tochange=042b530274430baa3680e8718f7b17d852f935d1

Thanks for the report.

Severity: -- → S3
Status: UNCONFIRMED → NEW
Has Regression Range: --- → yes
Has STR: --- → yes
Ever confirmed: true
Keywords: regression
OS: Unspecified → All
Regressed by: 1739390
Hardware: Unspecified → All

Set release status flags based on info from the regressing bug 1739390

I'll take a look at this.

Assignee: nobody → tgiles
Status: NEW → ASSIGNED
Flags: needinfo?(sgalich) → needinfo?(tgiles)
Priority: -- → P3

Please take into consideration that this issue is also reproducible with the "Go to existing entry" link from the duplicate notification.

Flags: needinfo?(tgiles)
Priority: P3 → P2

I'm marking this access-s3 because there is a workaround (you could reload or shift+tab). However, it's borderline access-s2 because this workaround is not particularly discoverable or intuitive and some users might not be able to access this at all if they have certain usage patterns.

Whiteboard: [access-s3]
Attachment #9265734 - Attachment description: Bug 1756387: Fix keyboard navigation issues on about:logins. r=sgalich,dimi → Bug 1756387 - Fix keyboard navigation issues on about:logins. r=sgalich,dimi
Pushed by tgiles@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0ffe9ca88000
Fix keyboard navigation issues on about:logins. r=sgalich,dimi

Backed out for causing mochitest failures on browser_tabKeyNav.js

  • Backout link
  • Push with failures
  • Failure Log
  • Failure line: TEST-UNEXPECTED-FAIL | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | [JavaScript Error: "Unknown Collection "main/fxmonitor-breaches"" {file: "resource://services-settings/RemoteSettingsClient.jsm" line: 158}]
Flags: needinfo?(tgiles)
Pushed by tgiles@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c0c2a5873abe
Fix keyboard navigation issues on about:logins. r=sgalich,dimi

Backed out for causing mochitest failures on browser_tabKeyNav.js.

Push with failures
So far there are 2 failures lines.

Failure log for | Actual focused element should equal the expected focused element
Failure log for | [JavaScript Error: "Unknown Collection "main/fxmonitor-breaches"" {file: "resource://services-settings/RemoteSettingsClient.jsm" line: 158}]

Backout link

[task 2022-03-09T22:26:04.553Z] 22:26:04     INFO - TEST-START | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js
[task 2022-03-09T22:26:05.133Z] 22:26:05     INFO - TEST-INFO | started process screencapture
[task 2022-03-09T22:26:05.254Z] 22:26:05     INFO - TEST-INFO | screencapture: exit 0
[task 2022-03-09T22:26:05.254Z] 22:26:05     INFO - Buffered messages logged at 22:26:04
[task 2022-03-09T22:26:05.254Z] 22:26:05     INFO - Entering setup bound setup
[task 2022-03-09T22:26:05.255Z] 22:26:05     INFO - Console message: [JavaScript Error: "Unknown Collection "main/fxmonitor-breaches"" {file: "resource://services-settings/RemoteSettingsClient.jsm" line: 158}]
[task 2022-03-09T22:26:05.255Z] 22:26:05     INFO - UnknownCollectionError@resource://services-settings/RemoteSettingsClient.jsm:158:5
[task 2022-03-09T22:26:05.255Z] 22:26:05     INFO - sync@resource://services-settings/RemoteSettingsClient.jsm:501:13
[task 2022-03-09T22:26:05.255Z] 22:26:05     INFO - 
[task 2022-03-09T22:26:05.255Z] 22:26:05     INFO - Leaving setup bound setup
[task 2022-03-09T22:26:05.256Z] 22:26:05     INFO - Entering test bound setup_head
[task 2022-03-09T22:26:05.256Z] 22:26:05     INFO - Leaving test bound setup_head
[task 2022-03-09T22:26:05.257Z] 22:26:05     INFO - Entering test bound test_tab_key_nav
[task 2022-03-09T22:26:05.257Z] 22:26:05     INFO - Buffered messages logged at 22:26:05
[task 2022-03-09T22:26:05.257Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.258Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.258Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.259Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {"0":{},"1":{},"2":{},"3":{},"4":{},"5":{},"6":{}} == {"0":{},"1":{},"2":{},"3":{},"4":{},"5":{},"6":{}} - 
[task 2022-03-09T22:26:05.260Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.260Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.260Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.261Z] 22:26:05     INFO - TEST-PASS | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - 
[task 2022-03-09T22:26:05.262Z] 22:26:05     INFO - Buffered messages finished
[task 2022-03-09T22:26:05.262Z] 22:26:05     INFO - TEST-UNEXPECTED-FAIL | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - got ({}), expected ({}) (operator ==)
[task 2022-03-09T22:26:05.262Z] 22:26:05     INFO - Stack trace:
[task 2022-03-09T22:26:05.262Z] 22:26:05     INFO - is@resource://specialpowers/SpecialPowersSandbox.jsm:90:21
[task 2022-03-09T22:26:05.262Z] 22:26:05     INFO - @chrome://mochitests/content/browser/browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js:96:9
[task 2022-03-09T22:26:05.263Z] 22:26:05     INFO - Not taking screenshot here: see the one that was previously logged
[task 2022-03-09T22:26:05.264Z] 22:26:05     INFO - TEST-UNEXPECTED-FAIL | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - got ({}), expected ({}) (operator ==)
[task 2022-03-09T22:26:05.264Z] 22:26:05     INFO - Stack trace:
[task 2022-03-09T22:26:05.264Z] 22:26:05     INFO - is@resource://specialpowers/SpecialPowersSandbox.jsm:90:21
[task 2022-03-09T22:26:05.264Z] 22:26:05     INFO - @chrome://mochitests/content/browser/browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js:96:9
[task 2022-03-09T22:26:05.264Z] 22:26:05     INFO - Not taking screenshot here: see the one that was previously logged
[task 2022-03-09T22:26:05.265Z] 22:26:05     INFO - TEST-UNEXPECTED-FAIL | browser/components/aboutlogins/tests/browser/browser_tabKeyNav.js | Actual focused element should equal the expected focused element - {} == {} - got ({}), expected ({}) (operator ==)
[task 2022-03-09T22:26:05.265Z] 22:26:05     INFO - Stack trace:
Flags: needinfo?(tgiles)
Flags: needinfo?(tgiles)

Okay, so I thought the issue was trying to land the patch when treeherder was closed but I guess there's something else going on here. I'll see what's going on.

Flags: needinfo?(tgiles)
Pushed by tgiles@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f6a7c3a10556
Fix keyboard navigation issues on about:logins. r=sgalich,dimi
Status: ASSIGNED → RESOLVED
Closed: 9 months ago
Resolution: --- → FIXED
Target Milestone: --- → 100 Branch
Regressions: 1759191

I‘ve verified this enhancement using the latest Firefox Nightly 100.0a1 (Build ID: 20220316095231) and Firefox Beta 99.0b4 (Build ID: 20220315185755) on Windows 10 x64, macOS 11.6, and Ubuntu 20.04.

  • The “Search Logins” search box, the “Sign in to Sync” button, and the menu button can be constantly focused and accessed using the keyboard navigation.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.