Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explore local QuickPick control #189030

Open
Tracked by #189320
hbons opened this issue Jul 27, 2023 · 5 comments
Open
Tracked by #189320

Explore local QuickPick control #189030

hbons opened this issue Jul 27, 2023 · 5 comments
Assignees
Labels
quick-pick Quick-pick widget issues ux User experience issues
Milestone

Comments

@hbons
Copy link
Member

hbons commented Jul 27, 2023

Something that comes up a lot is that the quick pick is non-local, and it's easy to miss when triggered through a UI control (as opposed to by the user through a shortcut). The problem gets worse on large/multiple screens. In addition to that, the cross-platform (webview) menu possibilities are very limited. It's not possible to use icons, groups, description etc. And in a webview menus are static and must be predefined.

QuickPick guidelines: https://code.visualstudio.com/api/ux-guidelines/quick-picks

Considerations:

  • Benefits?
    • Filter functionality
    • Filter placeholder text serves as menu title
    • Group labels
  • When?
    • Do use for variable lists (like branches, repositories, files, folders, etc.)
    • Do use for recents/favorites/suggested
    • Don't use it as a replacement for a menu
  • Limitations/problems/misuse?
    • Don't add more than 3 other actions (e.g. "Create Branch" at the top of a list of branches)
    • Don't use submenus or multiple steps
    • No shortcuts
    • Should not be combined in any way with native menus
    • Should only be able to triggered through a main UI element.
    • Should not be used to list a set that's always the same
    • Multistep allowed?
  • Specs?
    • New guidelines: filter field MUST have a descriptive placeholder text, mentioning what is being picked and what for: For example: Select a color for profile 'Ruby' or Select a milestone for this pull request
  • Simplified placeholder label? e.g. just "Milestone"
  • Properties? width/height/euro
  • Setting: Allow Local QuickPick

Mockup:
image

This would essentially be a very powerful menu, but using existing QuickPick APIs.

cc @daviddossett

@hbons hbons added the ux User experience issues label Jul 27, 2023
@hbons hbons added this to the August 2023 milestone Jul 27, 2023
@hbons hbons self-assigned this Jul 27, 2023
@hbons hbons added the quick-pick Quick-pick widget issues label Jul 27, 2023
@mjbvz
Copy link
Collaborator

mjbvz commented Jul 27, 2023

Also interested in something like this for the code action UI. Users would like the ability to type to filter the list of code actions

@hbons
Copy link
Member Author

hbons commented Jul 31, 2023

feedback from @MostlyBlindGamer@dragonscave.space:

"I often miss it when zoomed into the original context.

I already use an accessibility option originally intended for hearing loss and deafness to deal with pop ups like this: the whole screen flashes on audio alerts, so I at least know I’m missing something. Adding an optional audio alert would make this option available.

I also find having the command palette and such in the center of the window more intuitive, in general.

Having the option of popping this up in context (like a context menu) would be cool though. I like your idea."

@Tyriar
Copy link
Member

Tyriar commented Aug 28, 2023

I've considered doing something like this for terminal run recent command and it's also come up for the refactor menu

@Tyriar
Copy link
Member

Tyriar commented Sep 13, 2023

There's a concern here that this would take away a lot of vscode's simplicity when popups start appearing all over the place, as opposed to always being in the same spot.

@eamodio
Copy link
Contributor

eamodio commented Sep 13, 2023

I would argue that the "simplicity" in this case is harmful to the experience -- since the user is forced into context switching. I would also argue, though separate from this issue, is that the "simplicity" of only having a quickpick UI vs a richer (though still simple) "form builder" UI also does active harm to the experience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
quick-pick Quick-pick widget issues ux User experience issues
Projects
None yet
Development

No branches or pull requests

6 participants