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

Re-think keyboard and mouse shortcuts #4972

Closed
philippotto opened this issue Dec 3, 2020 · 3 comments
Closed

Re-think keyboard and mouse shortcuts #4972

philippotto opened this issue Dec 3, 2020 · 3 comments
Assignees

Comments

@philippotto
Copy link
Member

A lot of the shortcuts grew historically and could be more intuitive. New UI elements, such as a context menu (see #4950), should be prioritized here, since they win the usability game.

However, we need to consider how to be compatible with existing power users. For example, a "legacy mode" could be offered.

Let's brainstorm first how the shortcuts could be designed from scratch and then think about how to get there.

@MichaelBuessemeyer
Copy link
Contributor

While implementing #4950 I came up with the following idea:

By using golden layout we offer the user to adjust the tracing view to her/his likes.
I think we could do the same thing for the keyboard shortcuts. I had that idea because games today offer the user to change the keyboard mapping to make it more convenient/easier to use for the user. This would include:

  • A "good" default for the keyboard shortcuts like we have one for the UI layout.
  • A "legacy" default keyboard shortcut preset.
  • Saving the saved keyboard shortcuts per user and maybe also adding the possibility to have multiple keyboard shortcut mappings in "keyboard profiles" that the user can switch through.
  • Adding a keyboard mapping UI to the tracing. One easy to implement idea would be adding a new tab besides the info, mapping, etc. tabs. In that UI the user could see all shortcuts, therefore making the shortcuts more "discoverable" and he/she could adjust the shortcuts to his/her likes and also could switch between different keyboard mapping profiles and also reset the currently active profile to the default or legacy keyboard layout.

I do not know how hard it is to make the keyboard shortcuts mapping "dynamic". Maybe we could agree on hacking a spike to estimate whether this change effort / reward tradeoff is worth it 🤔

@philippotto @normanrz and other people with an opinion about this. What do you think about this idea?

Additional: Some shortcuts might be fixed: E.g.: Rightclick for the context menu or so.

@normanrz
Copy link
Member

normanrz commented Dec 8, 2020

I think we should overhaul the keyboard shortcuts, because there it is quite messy with a lot of historical baggage atm. When doing that, we should offer "legacy" bindings for existing users. That part, I think we should have.
I don't think we should make the shortcuts entirely user-configurable, though.

@philippotto
Copy link
Member Author

philippotto commented Dec 17, 2020

From our today's discussion, these would be the next todo items:

  • refactor our internal shortcut handling so that an additional indirection can be used to offer a new and a legacy keybinding set (don't let users configure individual shortcuts, though)
  • create a complete list of new shortcuts. here are already a few shortcuts (also see https://www.notion.so/scalableminds/Design-Doc-UI-and-Shortcuts-76a59ceaa7fb49d8810df24fd56f1282):
    • pressing space + moving mouse pans view (at least in orthogonal view)
    • old space-functionality is attached to "enter"
    • ctrl+scroll should zoom
    • support pinch-to-zoom
    • right-click always opens context menu
    • move should work by dragging the empty canvas if possible
  • offer a UI to switch between legacy and new mode
  • encourage user to switch to new mode (e.g., via a toast or modal?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants