Some items in the Site Identity panel are not focusable/navigatable if you click the Site Identity icon and navigate to them
Categories
(Firefox :: Site Identity, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr60 | --- | unaffected |
firefox67 | --- | wontfix |
firefox68 | --- | verified |
People
(Reporter: itiel_yn8, Assigned: Gijs)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: regression)
Attachments
(1 file)
STR:
- Restart Nightly or start it from fresh
- Open https://bugzilla.mozilla.org/home
- Click the Site Identity icon in the URL bar (the {i) icon)
- Using Tab/Arrow keys try to navigate to "Trackers", "Cookies", "Standard (cog)" and the permissions section's cog
AR:
You can't.
ER:
You should be able to.
This doesn't reproduce if you Ctrl+L > Shift+Tab and Enter, and after doing so you wouldn't be able to reproduce the STR above. Restarting Nightly will make this reproducible.
Comment 1•6 years ago
|
||
I think this occurs because we no longer use PanelMultiView keyboard navigation in the Site Identity panel as per the short-term workaround in bug 1522092. Unfortunately, that means PanelMultiView doesn't run the initialisation code which makes these controls focusable. (It does run that code if you activate the panel from the keyboard, though, because PanelMultiView has to focus the first control in that case.)
This will probably be fixed by bug 1477673, where we will fix PanelMultiView's key nav code and then switch Site Identity to use it again.
Unfortunately, this probably means this bug is a regression introduced by bug 1522092. Easiest way to work that out would be to test with Firefox 66.
Comment 2•6 years ago
|
||
(In reply to James Teh [:Jamie] from comment #1)
Unfortunately, this probably means this bug is a regression introduced by bug 1522092. Easiest way to work that out would be to test with Firefox 66.
Ug. Nope, because we uplifted that patch to 66. So we'd need to test with 65 (or just revert the patch and test with a local build).
Updated•6 years ago
|
Comment 3•6 years ago
|
||
I confirmed that this was regressed by bug 1522092. :(
Updated•6 years ago
|
Comment 4•6 years ago
|
||
Assigning to Jamie so it can be closed after bug 1477673 gets fixed and is confirmed to fix this issue too.
Comment 5•6 years ago
|
||
bug 1477673's fix bounced so still continuing to wait on that.
The STR can still be reproduced after bug 1477673, though the issue is a bit different now.
You can now open all of the items in the panel, but they're not focusable (except for the 2 cog buttons), meaning there's no visual representation of them being selected.
And again, you must first click the Site Identity icon in the URL bar the first time in Nightly's session to reproduce this.
Comment 7•5 years ago
|
||
(In reply to Itiel from comment #6)
The STR can still be reproduced after bug 1477673, though the issue is a bit different now.
You can now open all of the items in the panel, but they're not focusable (except for the 2 cog buttons),
Are you still doing this with the tab key? If they're not focusable (and thus not getting focus), how are you opening them?
I can't reproduce this. Even if I click the Site identity icon, tab then gets me to all the controls. That said, I can't see the screen, so perhaps they're somehow getting focus without there being visual indication. I don't know why that would be, though.
Can you provide complete and updated STR (including exact actions and expected results at each point) for clarity? Thanks.
(In reply to James Teh [:Jamie] from comment #7)
Are you still doing this with the tab key?
Doesn't matter if you're tabbing or using the space key.
If they're not focusable (and thus not getting focus), how are you opening them?
I meant visually focused. Behind the scenes they are actually focused.
That said, I can't see the screen, so perhaps they're somehow getting focus without there being visual indication.
Yes, that's the case.
Can you provide complete and updated STR (including exact actions and expected results at each point) for clarity? Thanks.
Sure!
- Restart Nightly (or be in a session that you didn't open the Site Identity panel by keyboard navigation means)
- Open bugzilla.mozilla.org
- Click the Site Identity icon
- Use the ArrowDown or Tab key once to navigate to the "Show connection details" (>) button -- the button is not outlined or changing to a hover state. The same issue reproduces for all buttons in this panel except for the 2 cog buttons
- Even though it seems nothing is focused/selected, hit Enter -- will work as expected
- Close the Site Identity panel
- You can repeat steps 3-6 as many times as you'd like, as long as you don't open the Site Identity panel by keyboard navigation means
- Ctrl+L > Shift+Tab > Enter, and repeat step #4 -- this will now work as expected until the next restart to Nightly.
Hope that's clear enough :)
Comment 9•5 years ago
|
||
Thanks. Since focus is being set correctly, I have no idea why it isn't being reflected visually. Given that I can't see, this is not something I can investigate. Gijs, can you help find someone to assist with this? See comment 8. (Note that a11y does report focus, so this seems to be purely visual.)
Assignee | ||
Comment 10•5 years ago
|
||
This doesn't reproduce on mac. This is caused by how we track "should we show focus rings" on Windows/Linux. The elements that have working visual feedback use :focus
and the elements that are broken use :-moz-focusring
.
Generally speaking, I believe :-moz-focusring is preferred, to avoid showing the focused styling for users who navigate the UI by clicking things, and where showing what to them is effectively a "hover" style when the item is not actually hovered by the cursor (after pressing a button once, for instance) is confusing.
I think the bug here is that tabbing around the panel somehow doesn't trip the window-global "This user uses keyboard navigation" state flag, whereas using shift-tab + enter to open the identity popup from the navbar does do that.
It looks like the panelmultiview code that sets focused elements in response to keypresses might need to pass FLAG_BY_KEY, based on https://searchfox.org/mozilla-central/rev/d33d470140ce3f9426af523eaa8ecfa83476c806/dom/base/nsGlobalWindowInner.cpp#4023-4028 which is used in ther window's "do we need to show focus rings" tracking code.
Assignee | ||
Comment 11•5 years ago
|
||
Comment 12•5 years ago
|
||
Comment 13•5 years ago
|
||
Assignee | ||
Comment 14•5 years ago
|
||
So the spacebar insertion instead wipes the field, indicating its contents were selected. That's why the test fails. Why only on mac? "home" on a mac does not, in fact, move focus to the start of the line (cmd-arrow does). It only happened to work because the test wasn't selecting the input before. Now that we're moving focus with the keyboard, that's totally what it does because the HTML input code checks for the last focus movement method when deciding whether to select field contents, and it makes things sad. But only on mac, because on linux/windows dispatching 'home' fixed things.
Updated•5 years ago
|
Comment 15•5 years ago
|
||
Updated•5 years ago
|
Comment 16•5 years ago
|
||
bugherder |
Assignee | ||
Comment 17•5 years ago
|
||
I'm tempted to suggest we let this ride with 68 (ie wontfix on 67) as I don't think the steps in comment #0 (never using tab/shift-tab and then clicking to open the identity panel and then starting to use tab/shift-tab) are all that common. Itiel / Johann, could you share if that seems like the right decision to you?
Reporter | ||
Comment 19•5 years ago
|
||
(In reply to Johann Hofmann [:johannh] from comment #18)
I agree, seems like an edge-case. :)
Same here.
Additionally, this may give me (or others) enough time to find unforeseeable regression(s) that may be caused by this fix.
Updated•5 years ago
|
Updated•3 years ago
|
Description
•