Closed Bug 1437524 Opened 7 years ago Closed 2 years ago

In the rich list of autocomplete results, tab should not move through all the items

Categories

(Firefox :: Address Bar, defect, P2)

defect
Points:
5

Tracking

()

RESOLVED WONTFIX
Tracking Status
firefox60 --- fix-optional

People

(Reporter: MarcoZ, Assigned: daisuke)

References

(Blocks 1 open bug)

Details

(Keywords: access, papercut, regression, Whiteboard: [snt-scrubbed][search-papercut])

Attachments

(2 files)

STR: 1. Open Firefox. 2. Press CTRL+L or Alt+D to move to the address field. 3. Type some words so the Google Search becomes the first AutoComplete item. 4. Press DownArrow to focus that. 5. Press Tab. Expected: Tab should move to the one-off buttons that allows searching for the term with other supported search engines. Actual: Tab moves through all the items in the autocomplete list, cycling around, effectively trapping keyboard focus. On none of our supported platforms is it common to tab through list items, even when they are part of an autocomplete. The expected keyboard interaction is to use up and down arrows for that. Tab instead moves focus out of that list, and depending on where focus lands, closes the list or not. In our case, if focused on a Search item, moving focus to the one-off search buttons is the appropriate and expected behavior. Marco, I am not certain if this is also a regression from bug 1427366 or if this was the case even with the old control. But it is a bug that should be fixed nevertheless. Along with the one-off search buttons bugt I am going to file shortly. NI'ing you so you can prioritize.
Flags: needinfo?(mak77)
Blocks: 1437528
(In reply to Marco Zehe (:MarcoZ) from comment #0) > Tab should move to the one-off buttons that allows searching for the term > with other supported search engines. That's correct, in the address bar you can use ALT+DOWN or ALT+UP to move to the one-off buttons. We clearly considered also TAB, to make it work like the search bar, but there are 2 problems with that: 1. our address bar always allowed both DOWN and TAB to move through results, thus we may have a lot of users with a muscle memory of TAB to cycle results. 2. there is a proposal to support the "Tab to search" behavior of Chrome (bug 782557) and that would further complicate things. > Marco, I am not certain if this is also a regression from bug 1427366 or if > this was the case even with the old control. If it's about the Address Bar, it's not a regression, it was a deliberate choice to not break users muscle memory. We can clearly re-evaluate, but we need data to tell how many users we'd break. We'll need that data also for tab to search, so it's likely worth collecting it. CC-ing dzeber to know if we have any data to answer the question (How many of our users use tab to cycle through results in the address bar), but I doubt we have it.
Component: Autocomplete → Address Bar
Flags: needinfo?(mak77) → needinfo?(dzeber)
Priority: -- → P2
Product: Toolkit → Firefox
Whiteboard: [fxsearch]
Also :phlsa for eventual UX insight. I'm not sure how to coalesce so much functionality like one-offs, tab-to-search and existing users muscle-memory into the only TAB key.
Flags: needinfo?(philipp)
(In reply to Marco Zehe (:MarcoZ) from comment #0) > Expected: > Tab should move to the one-off buttons that allows searching for the term > with other supported search engines. Bug 1292321 has the background on the decision that this should not happen that Marco B. mentioned.
(In reply to Marco Bonardo [::mak] from comment #1) > (In reply to Marco Zehe (:MarcoZ) from comment #0) > > Tab should move to the one-off buttons that allows searching for the term > > with other supported search engines. > > That's correct, in the address bar you can use ALT+DOWN or ALT+UP to move to > the one-off buttons. That is totally unintuitive. I am a versed keyboard user, and I would never ever have thought of using alt+up arrow or alt+down arrow to move to these buttons. In Windows and Linux, alt+down drops down lists of items, like on a html:select element, for example. Alt+up arrow closes that same dropdown. Making them behave so differently in the awesome bar breaks several conventions on these platforms. Mac handles dropdowns differently traditionally, so they are a separate story. > We clearly considered also TAB, to make it work like the search bar, but > there are 2 problems with that: > 1. our address bar always allowed both DOWN and TAB to move through results, > thus we may have a lot of users with a muscle memory of TAB to cycle results. Like was mentioned in bug 1292321 comment #11, Microsoft removed the tab key focusing the search results in Edge, because what IE did went against their own conventions. Note that you cannot even tab through the search results in the Windows 10 start search box. But up and down arrows cursor through these items and allow you to select one. In Firefox, you cannot tab through menu bar items, or through dropped down items in an opened html:select element either, so why should our address bar behave differently? It may indeed inconvenience users for a bit who are used to this, but in the end, consistency is better than inconsistency. > 2. there is a proposal to support the "Tab to search" behavior of Chrome > (bug 782557) and that would further complicate things. Yeah I hate that feature in Chrome to be honest, since it, too, goes against all conventions the tab key stands for on all three platforms. > We can clearly re-evaluate, but we need data to tell how many users we'd > break. I think we *must* reevaluate this decision. I was never involved in the decision for tab to move through search results in the first place, or I would have intervened very strongly. But this decision must have been made at a time where I was already at Mozilla, so whoever made this decision went past the accessibility team at that time. Note that my statements are also being backed up by the WAI-ARIA Web Authoring guidelines for autocompletes: https://www.w3.org/TR/wai-aria-practices-1.1/#combobox There, it is clearly stated that tab should move to the next page element, not move through the suggestions popup. CC'ing Jamie from the accessibility team, who is also a heavy keyboard (and screen reader) user, if he has more input to offer.
Flags: needinfo?(jteh)
Oh and additionally: Neither I nor any other accessibility team member was involved by either engineering or UX when bug 1292321 was being discussed. I would have pointed out the above items then already as arguments against reverting that change.
(In reply to Marco Zehe (:MarcoZ) from comment #4) > I think we *must* reevaluate this decision. I was never involved in the > decision for tab to move through search results in the first place, or I > would have intervened very strongly. We totally agree that tab should not cycle, none of us was part fo that decision. The problem is that the behavior comes from ancient Firefox versions (likely far before Firefox 3), and we surely have quite a few vocal consumers of it, since when it broke (accidentally) we got various bug reports. The problem is to understand how many users we'll break and how to present that change properly (if we need to). That's why I think we should add some temporary telemetry, and if we figure out the problem only affects a minor population, changing it won't look that scary. I'll file a bug to add telemetry and move the ni to Dave there. For a "tab to search" feature we can surely find an alternative key combo, no doubt. Chrome users moving to Firefox may be used to that, but if we present some kind of "hint" explaining a different combo it should do.
Flags: needinfo?(dzeber)
And bug 1292321 didn't involve a11y because it was just fixing a regression, we just reverted to the status quo because we didn't have data to do differently.
Depends on: 1437803
(In reply to Marco Zehe (:MarcoZ) from comment #4) > CC'ing Jamie from the accessibility team, who is also a heavy keyboard (and > screen reader) user, if he has more input to offer. I don't have anything to add. I agree with comment 4 and it seems we have some alignment and a path forward in comment 6.
Flags: needinfo?(jteh)
Depends on: 1449488
Fwiw, telemetry reports that on Beta cycling through results with Tab is 0.03% (0.25% in Nightly), so it looks like we'd not be disrupting too many use-cases. But UX has a new design for one-off buttons in general, and we'll likely look into that.
Flags: needinfo?(philipp)

I'd argue that if you are typing in a text box and hit tab, focus should go to the next text box as it does roughly everywhere else. That would mean that if you have the search box enabled, hitting tab in the address bar - no matter its state - should move focus to the search box. The fact that it does not irritates me every day.

I think this is not feasible anymore for all users. It was discussed at long, users coming from other browsers, plus our historical users, rely on tab moving through all the results. We also recently introduced tab-to-search, equivalent to other browsers features.
With bug 1608766 if the panel is closed tab moves to the next widget.
If the panel is open, we could maybe introduce an a11y pref to make tab move between one-offs and results, though it will have a cost, since it will introduce a disabled-by-default navigation mode that may not be well tested by normal QA operations, thus it may break subtly with time. Of course it will need a thorough automated test.

Keywords: papercut
Points: --- → 5
Assignee: nobody → daisuke
Status: NEW → ASSIGNED

May I add a thought:

In regard to muscle memory I believe it's important to consider what other programs on the same platform would do. It's less important what FF would do in another widget or what a unique program, like Chrome, would do. Expectations source from using loads of other programs on a platform and from switching between them quickly. It's not helpful to observe unexpected behavior in the first place and then to consider: "oh, no, ah, yes, it's this FF app again. It's different here …"

So, yes, a switch would be nice. I would tend to have FF rather align to my other applications on my machine than it to behave peculiarly.

Attached video prototype1.mp4 (deleted) —

Hello!
I tried to make a prototype. Please check the attached video.
The behavior is very simple. When the user presses the tab key while the result panel is showing, move the focus to the one-off buttons, likewise, move the focus to the result panel when the one-off buttons have the focus. What do you think?
Or, do you think that we need more complex behavior? For example, in the video, the second result is “exactly”, when the user selects it, then types the tab key, “exactly” will be the search term for the one-off search, etc. Please let me know.

Of course, I add a preference that enables this feature.
Thank you very much for your opinion, Axel!

Flags: needinfo?(marco.zehe)
Flags: needinfo?(mak)

Very nice! Great video. 👍

I threw the patch to the try.
https://treeherder.mozilla.org/jobs?repo=try&revision=bd5b7f4ee8c1fc897f5cc3c566d638f32ce8ee22
Please download the runnable image from above if wants to try.
Then, please add browser.urlbar.tabToToggleOneOffsFocus pref as true.

One concern I have is this doesn't seem to take Tab-to-search into account, or better it will pretty much make it Down-to-search if the pref is flipped. Anyway if the pref is only used for a11y purposes I suppose that may not be a big deal, likely it should move under a accessibility.urlbar.* branch.
I'd suggest to write an Engineering Proposal to capture benefits and risks to help the team making a better decision.

Flags: needinfo?(mak)

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

One concern I have is this doesn't seem to take Tab-to-search into account, or better it will pretty much make it Down-to-search if the pref is flipped. Anyway if the pref is only used for a11y purposes I suppose that may not be a big deal, likely it should move under a accessibility.urlbar.* branch.
I'd suggest to write an Engineering Proposal to capture benefits and risks to help the team making a better decision.

Thank you very much!

Ah, indeed. That is, it seems that there are two ideas, I think.
The one idea is, if we can consider the Tab-to-search item as one of the results in the panel, we move the focus to the one-off buttons when pressing the Tab key, and select Tab-to-search item by the Arrow-down key. The consistency of the visual and the behavior of the key typing look not bad. But, Tab-to-search” will not be Tab-to-search.
The other one is, that we select Tab-to-search item by the Tab key, then move the focus to the one-off buttons by next Tab key. If we consider “Switching by Tab key is to switch the search engine”, it might be good. However, moving the focus to Tab-to-search item that looks like one of the results, then moving to one-off buttons, might be felt weird a bit, I think.

Anyway, as you said, I will try to write the proposal.

Whiteboard: [fxsearch] → [snt-triaged][search-papercut]
Attached file WIP: Bug 1437524: Respect WAI-ARIA (deleted) —
Whiteboard: [snt-triaged][search-papercut] → [snt-scrubbed][search-papercut]
Severity: normal → S3

The severity field for this bug is relatively low, S3. However, the bug has 4 duplicates and 5 See Also bugs.
:daisuke, could you consider increasing the bug severity?

For more information, please visit auto_nag documentation.

Flags: needinfo?(daisuke)

The last needinfo from me was triggered in error by recent activity on the bug. I'm clearing the needinfo since this is a very old bug and I don't know if it's still relevant.

Flags: needinfo?(daisuke)

Based on recent development, this new behavior is not compatible with our needs.
Today down and tab have different behaviors where tab moves to the next widget, but that may be in the result itself, for example some results have a dismiss and/or a learn more link. Tab will move to those widgets inside the result, and then to the next result.
Now we could make so once there's no more per-result widgets it jump to one-off instead of the next result, but once we implement bug 1041761 each result will have a button that will be reachable through tab.
For that, we cannot change the tab behavior as requested here.
We may want to evaluate alternatives to make shortcut buttons more easily accessible, maybe a separate search button on the toolbar (that directly enters search mode for a specific engine), or some other kind of view. We're happy to evaluate proposals on that matter.

Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Flags: needinfo?(marco.zehe)
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: