Skip to content

Polish Settings UI: Keyboard navigation (w/ tab key) #8768

Closed

Description

This is a list of issues we've found when trying to navigate the Settings UI using only the keyboard:

  • On Color Schemes edit page (with a custom scheme open so it's editable) use the tab key to navigate between controls. Press Tab from +AddNew and it will go select nothingness. One more tab will select the Black box. It should probably never select nothingness.
    • It also selects nothingness between Bright White and Foreground. Bright White (Tab) Nothingness (Tab) Foreground.
  • On all pages, it appears that once you tab all the way to Apply in the bottom right corner… you get stuck. I think tab navigation is supposed to be fully circular (going back to the first thing or the most Shift+Tabby thing) and around again.
  • Open SUI. Switch to a TerminalTab. Invoke "open Settings UI" kbd again. Hamburger menu focused.
    • Expected: highlight last highlighted setting

Potentially upstream issues:

Activity

  1. ghost added
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Jan 12, 2021
  2. removed
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Jan 12, 2021
  3. ghost added a commit that references this issue on Feb 8, 2021
  4. carlos-zamora commented on Feb 12, 2021

    @carlos-zamora
    Author

    Ok. I've done a bit of research on this issue. Here's some notes:

    • color schemes page
      • will be fixed as a part of the color schemes redesign
    • focus doesn't cycle on save button
    • highlight last highlighted setting
      • Tried using the FocusManager to store the last focused item (in SettingsTab and MainPage). Neither worked. This will require a more complex solution.
      • I'll be pulling this out into its own issue and labelling it as help wanted. I feel that it doesn't have that high of a priority (at least compared to other things).
    • tab navigation in left bar
      • this one now feels like it's by design. Closing.
    • radio buttons
      • already tagged
    • combobox
      • This one's tough. ComboBox has an IsTextSearchEnabled property that enabled this functionality. However, it only works if the list of items are "strings". Since we're defining an item template to add an icon or directly bind to the settings model, we can't explicitly use this feature and have icons at the same time.
      • I'm going to file a feature request on XAML for this one.
  5. ghost added a commit that references this issue on Feb 17, 2021
  6. carlos-zamora commented on Feb 18, 2021

    @carlos-zamora
    Author

    The ComboBox feature request is being tracked in microsoft/microsoft-ui-xaml#4182

  7. DHowett commented on Feb 18, 2021

    @DHowett
    Member

    Did you try StMoy's suggestion?

  8. carlos-zamora commented on Feb 18, 2021

    @carlos-zamora
    Author

    Did you try StMoy's suggestion?

    Not yet. I've been working on the color schemes page redesign.

  9. ghost added
    In-PRThis issue has a related PR
    on Feb 18, 2021
  10. ghost added a commit that references this issue on Feb 19, 2021
  11. ghost closed this as completedin #9196on Feb 19, 2021
  12. ghost added a commit that references this issue on Feb 19, 2021
    bb0e1d3
  13. ghost removed
    In-PRThis issue has a related PR
    on Feb 19, 2021
  14. ghost added
    Resolution-Fix-CommittedFix is checked in, but it might be 3-4 weeks until a release.
    on Feb 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-SettingsUIAnything specific to the SUIIssue-BugIt either shouldn't be doing this or needs an investigation.Priority-2A description (P2)Product-TerminalThe new Windows Terminal.Resolution-Fix-CommittedFix is checked in, but it might be 3-4 weeks until a release.

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions