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

Revisit structure of “System” menu #1455

Open
jotaen4tinypilot opened this issue Jun 19, 2023 · 0 comments
Open

Revisit structure of “System” menu #1455

jotaen4tinypilot opened this issue Jun 19, 2023 · 0 comments
Labels
enhancement New feature or request medium small

Comments

@jotaen4tinypilot
Copy link
Contributor

The “System” menu keeps growing as we add new features. In Pro, the ”System” menu can contain up to 8 items:

Screenshot 2023-06-19 at 18 02 16

(Note, “Logout” is conditional, i.e. only shown if user authentication is enabled.)

Before we add the next item to the “System” menu, we want to revisit the structure of it. We should also write up a few sentences as documentation, probably as comment somewhere in the <menu-bar> component.

Considerations

On a high-level, our menu(s) should be…:

  • Neat: the more items a menu contains, the harder it is for users to grasp its structure, and to find where things are.
    • There certainly is no hard limit in regards to items-per-menu, but 8 items on the same level (without any sort of grouping / division / sub-structure) feels quite a lot already.
  • Intuitive: the menu labels should be straightforward, and the menu structure should “feel” right – i.e., logical and consistent.
    • E.g., “System” implies “global”/“device-wide”, whereas “View” implies “local”/“client-side”. And “Actions” are operations against the target machine.
  • Practical: often-used items should be easy to reach, whereas less-used functionality can be “stashed away” somewhere.
    • One example here is the “About” menu item in the “Help” menu. You could argue whether that’s the right place, but the “About” dialog is really not that important in day-to-day usage, so it shouldn’t reside in “System” for example, to avoid clutter.

Some random notes for reference:

  • We mix items in the “System” menu that fall into slightly different categories. E.g., “Hostname” and “Virtual Media” are true properties of the device’s system, whereas e.g. “Log Out” is actually client-specific state, or “Update” is kind-of a meta functionality. We certainly don’t have to nail the semantics 100%, but maybe that realization helps us to think about the structure internally.
  • One constraint is that some items should stay in place for historical reasons. E.g., “Logs” could theoretically be moved somewhere else, but the problem is we’d have to change a lot of documentation and public support posts then.
  • Potential approaches to clear up the menu structure could be:
    • Sub-menus
    • Menu separators
    • A new top-level menu
  • We already introduced a new top-level menu “Help”, which allowed us to move “About” out of from the “System” menu.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request medium small
Projects
None yet
Development

No branches or pull requests

1 participant