-
Notifications
You must be signed in to change notification settings - Fork 24
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 context menu for nodes #4950
Conversation
frontend/javascripts/oxalis/controller/combinations/skeletontracing_plane_controller.js
Outdated
Show resolved
Hide resolved
Suggested Features:
|
I would stop here adding no more features as otherwise this PR only becomes bigger and therefore harder to review. @philippotto Could you please review this PR? And do you have an idea on how to handle that firefox opens a context menu on |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome stuff! This will be a great usability improvement :)
I left some code comments and also noted some things during testing:
- In a hybrid tracing, pressing the shift modifier will open a tooltip in the toolbar. however, that tooltip doesn't mention "rightclick to open contextmenu" (it only says that a node can be selected).
- The "info"-stuff in the toolbar is cool! However, I'd move it to the bottom, so that one doesn't need to move the mouse across the info stuff to trigger an action.
- The info part could also show the node id of the clicked node and the corresponding tree id. Also, the clicked (node's) position could be shown in another line (again, clicking it would copy that position).
- Maybe rename "Navigate to subsequent Active Node" to "Activate next node" (same for previous)
- It's cool that the direct distance to the active node is immediately visible in the context menu. However, copying that distance is hard since the contextmenu immediately vanishes when selecting something. In general, this seems fine to me, but maybe we can simply copy the distance to the clipboard when clicking the entry?
- Why is the "Activate Next/Previous Node" action under "possible interactions" ? since it's a simple trigger (as opposed to the move action which needs additional interaction), we could simply list it in the top-level menu? however, it might be a bit weird, since it doesn't have to do anything with the clicked position 🤔 but that's a problem in general. Overall I'm a bit hesitant about the "possible interactions" UI. It's not very typical (afaik) to have such a help section in a context menu. What do you think about removing this for the first iteration?
I'll have a look regarding the context menu bug in firefox!
This seems to be by design :( Then, I suggest to also allow Btw, I wouldn't use ctrl + rightclick, since mac users without a right mouse button would use ctrl + leftclick to get a rightclick. And alt + rightlick wouldn't work on default linux setups since that opens an OS context menu. |
TODO List:
|
I think removing it is fine. |
On hold because of planned keyboard shortcuts / UI toolbar rework in #4997 |
@philippotto I applied all the feedback, added the context menu to the docs, and tested each feature a bit. Could you please check this PR again? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome stuff! Works very well for me and the code looks good, too :)
…/webknossos into add-context-menu-for-nodes
This PR adds a context menu for nodes that offers various actions.
Currently, the node context menu is only supported on nodes.
I could also change it, so that it is possible to open it up anywhere, no matter whether there is a node or not.
The following operations are currently implemented and are available if the menu is opened on an existing node:
Additional useful feature suggestions are welcome 😸
URL of deployed dev instance (used for testing):
Steps to test:
Issues:
[ ] Updated (unreleased) migration guide if applicable[ ] Adapted wk-connect if datastore API changes[ ] Needs datastore update after deployment