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

Simplify + Standardize OS Buttons #6167

Open
ninavizz opened this issue Oct 30, 2020 · 9 comments
Open

Simplify + Standardize OS Buttons #6167

ninavizz opened this issue Oct 30, 2020 · 9 comments
Labels
C: manager/widget help wanted This issue will probably not get done in a timely fashion without help from community contributors. P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. ux User experience

Comments

@ninavizz
Copy link
Member

ninavizz commented Oct 30, 2020

Problem
Today's buttons in Qubes OS go against a few standard best-practice* paradigms in UX.

  • There should always be a darker "primary" and a lighter "secondary" button
  • The "back-arrow" icon is unclear to many users as a return-button. My Lenovo laptop and my Mac, both lack this symbol on any buttons, as an example.
  • Icons on buttons as a general rule, are undesirable. They add clutter to a UI which adds cognitive load. While they are often seen as helpful in critical review, in reality there are often too many icons in a user's view; which when the icons are not clearly and obviously evident, and when many have gradients and multiple colors, adds to a user's cognitive burden.
  • In a discussion on a different thread from many months ago that I cannot remember, the "x" on the cancel button was expressed by many as desirable; so I included a simpler "x" on the below mockups.

** "Best Practice" ≠ often observed in practice, rather what has tested well among ux professionals and has been shared among our community as things more of us should do more often.

Proposed Solution
The below draws from the Gnome UI library. The mockups below use SegoeUI, but I'd also like to standardize around Source Sans Pro w/in Qubes, eventually; so that'd be preferred.

ButtonStyles

@ninavizz ninavizz added P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. labels Oct 30, 2020
@GWeck
Copy link

GWeck commented Oct 31, 2020

The buttons should also be presented in a defined sequence. Currently, sometimes the OK button is on the left side and the Cancel button on the right, somtimes vice versa. Surely this helps to alert the user, but it can also trigger to select the wrong button.

@andrewdavidwong
Copy link
Member

andrewdavidwong commented Oct 31, 2020

Today's buttons in Qubes OS go against a few standard best-practice* paradigms in UX.

I'm going to assume that this is referring to Qubes-specific GUIs (manager/widgets), since non-Qubes-specific GUIs (e.g., Xfce4) are inherited from upstream.

@andrewdavidwong andrewdavidwong added this to the TBD milestone Oct 31, 2020
@ninavizz
Copy link
Member Author

ninavizz commented Nov 1, 2020

Oof... I was hoping this could even go on XFCE managed windows, as those are the default for Qubes.

@ninavizz
Copy link
Member Author

ninavizz commented Nov 1, 2020

Artwork for the "x" on an aside:
Exxy-X_L
Exxy-X_M
Exxy-X_S

@marmarek
Copy link
Member

marmarek commented Nov 1, 2020

It is possible to create our own theme for Xfce. I don't know how much work that is and how much flexibility it gives. Take a look at "Appearance" option in settings - there are "Style" and "Icons" tabs. I don't see any of them having different colors for different buttons, so I don't know if that's possible, but there is something to explore.

@andrewdavidwong
Copy link
Member

It is possible to create our own theme for Xfce. I don't know how much work that is and how much flexibility it gives. Take a look at "Appearance" option in settings - there are "Style" and "Icons" tabs. I don't see any of them having different colors for different buttons, so I don't know if that's possible, but there is something to explore.

Ah, that's a good point. A long time ago, I customized an Xfce theme for myself, and I vaguely recall seeing a way to customize buttons, but I had (and still have) no idea how to do it. My sense is that the overall framework allows for quite a bit of flexibility, if you know how to use it.

@ninavizz
Copy link
Member Author

Right. I'd like to see Qubes ship with cleaner & more intuitive defaults. I think I discussed this with @marmarta some time ago, and she suggested it could be easy. Marta, could you summarize what you'd had in mind, here?

Of course, world peace could be easy, too... if a few basic caveats could be met by all of humanity. Pride, greed, egos, etc. Small things, really.

@ninavizz
Copy link
Member Author

ninavizz commented Jul 2, 2021

Adding this as a component to #6414

@ninavizz ninavizz added the help wanted This issue will probably not get done in a timely fashion without help from community contributors. label Jul 2, 2021
@ninavizz
Copy link
Member Author

ninavizz commented Jul 2, 2021

Labeled this issue "Help Wanted," because none of the core Qubes OS team are likely to be able to prioritize this anytime soon, abreast critical project priorities. That said: to me, this feels like an helpful addition to the UI.

The core Qubes team have given their blessing to this UX solution, so should a developer like to take this on pls "@" me here and I'll hop-to gathering final SVG artwork to make this possible.

@andrewdavidwong andrewdavidwong removed this from the Release TBD milestone Aug 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: manager/widget help wanted This issue will probably not get done in a timely fashion without help from community contributors. P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. ux User experience
Projects
None yet
Development

No branches or pull requests

5 participants