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

Add UI to toggle toolbar items #6717

Open
quincylvania opened this issue Aug 3, 2019 · 3 comments · May be fixed by #7496
Open

Add UI to toggle toolbar items #6717

quincylvania opened this issue Aug 3, 2019 · 3 comments · May be fixed by #7496
Labels
tools Something for the taskbar/toolbar
Milestone

Comments

@quincylvania
Copy link
Collaborator

The v3 contextual toolbar opens up lots of possibilities for operation discoverability and advanced tools in iD (see #6684 (comment)). However, it runs the risk of becoming cluttered.

61954615-2d7b1e80-af87-11e9-8410-29dbe79f01b7

If a mapper never uses a tool like Circularize—or relies solely on the keyboard shortcut—it's a waste to always show the button.

We should add a way for users to quickly add and remove items from the toolbar. Logically, this could be a toolbar item itself.

Screen Shot 2019-08-03 at 1 20 09 PM
Screen Shot 2019-08-03 at 1 20 39 PM

This would let us keep the default toolbar stripped down while still offering tools for power mappers. For example:

In addition, features that live elsewhere could have be turned into optional, redundant tools. These could replace the need to dive into menus or use keyboard shortcuts for some users.

  • Switch backgrounds
  • Adjust imagery offset
  • Toggle minimap, streetview, info panels, etc.
  • Navigate issues

As part of #6483, these toolbar items could be modular so developers could create and distribute their own tool plugins.

@quincylvania quincylvania added the tools Something for the taskbar/toolbar label Aug 3, 2019
@slhh
Copy link
Contributor

slhh commented Aug 4, 2019

@quincylvania
In general we should avoid to let user customizations change the functionality of iD essentially for the following reasons:

  • It makes supporting other users harder. Mapping instruction in discussions or manuals would potentially fail for the other user due to different customization.
  • Requiring knowledge how to customize iD to support your mapping task well is contradictory to beina an easy to use editor.

Making operations unavailable is such an essential change of the functionality. Fortunately, your concept can be modified:

Make operations removeable from the top bar like removing favorites.
In case operations were removed, show the tools button, which is opening a dropdown making removed operations directly available. Items of the dropdown can be made dragable back to the topbar. The Tools button could also be named "More".
The customization does only decide whether invoking an operation requires pressing one or two buttons, which isn't an essential change anymore.

Another benefit is, that the tools button doesn't contribute to cluttering the topbar for any context where hiding some operations isn't desirable.

Operations in the tools dropdown can be checked for availablity when the tools button is pressed. This could potentially improve the general performance of iD.

@quincylvania
Copy link
Collaborator Author

@slhh I appreciate and share your desire to keep iD an easy-to-use editor. However, I don't think this feature would detract from that goal.

This menu would be a compromise between not supporting advanced features and showing an overwhelming number of controls. Avoiding scope creep like this was part of the reasoning behind the taskbar concept (#3123), which the rich toolbar is somewhat growing to encompass. All the basic tools the user needs would appear by default, just as they do now, and the rest would be just a few clicks away.

Mapping instruction in discussions or manuals would potentially fail for the other user due to different customization.

True, but I don't think it's a big issue to say things like "make sure the Extract tool is enabled" in guides.

Requiring knowledge how to customize iD to support your mapping task well is contradictory to beina an easy to use editor.

To me, an easy-to-use editor doesn't imply that every task must be equally easy nor that no learning is required. It means the learning curve is so shallow that the user feels like the app is working for them, not against them.

Making operations unavailable is such an essential change of the functionality.

The user would still be in control of what tools are enabled. And in any case iD v3 is intended to change essential functionality where needed.

@quincylvania
Copy link
Collaborator Author

I added this starting in ead729b. It'd be great for people to start using it and tell us what they think. It'll become more useful as we add more optional tools.

toolbox demo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tools Something for the taskbar/toolbar
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants