Keymap: use D-key for view navigation pie-menu (2nd iteration) #88092

Closed
opened 2021-05-07 06:29:09 +02:00 by Campbell Barton · 37 comments

{F10130612, size=full, alt="View pie menu"}

Motivation

  • An operation such as View should be easily accessible.
  • Tilda (~) key isn't always accessible or is not consistent in non US-english keyboards (e.g. Spanish layout has it on the right side next to L, in some layouts it doesn't even exist)

Proposed Solution

Use the D key to access the View pie menu.
Note: original proposal was to use V, but it turns out to be conflicting with too many areas/workflows.

Conflicts

D is one of the most accessible keys on the left side of the keyboard that has been historically (and surprisingly) not assigned (without holding modifier keys) to any crucial tool.

  • Blender 2.93 introduced the use of D key in Sculpt mode for the Transfer Mode operator. This tool is quite handy in a speedy workflow, so the proposal is to change this to the key left to 1, read more in #88071.
  • Grease Pencil Vertex Paint mode uses D key to switch to the Draw tool, this hotkey needs to be either switched or removed.

What about Annotations?

Annotations won't be affected since they are only triggered while holding the D key. Whereas the View pie menu is simply triggered on press

Open Topics

  • Would we have a view menu for non-3D views?
This could include:
  • Frame-Selected (e.g. center the view on selected nodes)
  • View All
  • Go to Current Frame (for animation views)

Notes

  • This task is to evaluate the pros and cons of this change, it may be the compromises don't justify the change.
  • That the Tilda key fails on some systems could be handled as a bug instead of working around it with keymap changes.

Task updated by @pablovazquez based on community feedback and a discussion had during a UI meeting on May 20th.

{[F10130612](https://archive.blender.org/developer/F10130612/image.png), size=full, alt="View pie menu"} ## Motivation * An operation such as View should be easily accessible. * Tilda (`~`) key isn't always accessible or is not consistent in non US-english keyboards (e.g. Spanish layout has it on the right side next to `L`, in some layouts it doesn't even exist) ## Proposed Solution Use the `D` key to access the View pie menu. *Note: original proposal was to use `V`, but it turns out to be conflicting with too many areas/workflows.* ## Conflicts `D` is one of the most accessible keys on the left side of the keyboard that has been historically (and surprisingly) not assigned (without holding modifier keys) to any crucial tool. * Blender 2.93 introduced the use of `D` key in Sculpt mode for the `Transfer Mode` operator. This tool is quite handy in a speedy workflow, so the proposal is to change this to the key left to `1`, read more in #88071. * Grease Pencil Vertex Paint mode uses `D` key to switch to the Draw tool, this hotkey needs to be either switched or removed. ## What about Annotations? Annotations won't be affected since they are only triggered while holding the `D` key. Whereas the View pie menu is simply triggered on press ## Open Topics - Would we have a view menu for non-3D views? ``` This could include: ``` - Frame-Selected (e.g. center the view on selected nodes) - View All - Go to Current Frame (for animation views) ---- Notes - This task is to evaluate the pros and cons of this change, it may be the compromises don't justify the change. - That the Tilda key fails on some systems could be handled as a bug instead of working around it with keymap changes. ---- *Task updated by @pablovazquez based on community feedback and a discussion had during a UI meeting on May 20th.*
Author
Owner
Added subscribers: @ideasman42, @baoyu, @system-system, @jta, @Maged_Afra, @AndresStephens, @finirpar, @AlbertoVelazquez, @Gilberto.R, @1D_Inc, @xan2622, @TheRedWaxPolice, @RedMser, @JulianEisel
Author
Owner

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Campbell Barton changed title from Keymap: use V-key for view navigation sub-menu to Keymap: use V-key for view navigation pie-menu 2021-05-07 08:07:33 +02:00

How about using D key?

How about using D key?
Author
Owner

It's worth considering, this would be much less disruptive.

It's worth considering, this would be much less disruptive.
Member

Added subscriber: @JulienKaspar

Added subscriber: @JulienKaspar
Member

@ideasman42 I agree it would be best if we resolve this issue as a bug instead of working around it.
Were there any more results from trying out if the same key position independent of the keyboard layout. Or maybe detecting the keyboard layout settings and adjusting the keymap item based on that?

If all of that fails then I think V could work. But there is a bigger discussion on using the D key right now.
Currently the plan is to map the D key in every mode to the new Transfer Mode operator (#87134).
But there is also still the subject on possibly using a different shortcut for that (#87722) but some conflicts need to be resolved for that.
Depending on the outcome of that discussion the D key could end up being free or not for 3.0.

@ideasman42 I agree it would be best if we resolve this issue as a bug instead of working around it. Were there any more results from trying out if the same key position independent of the keyboard layout. Or maybe detecting the keyboard layout settings and adjusting the keymap item based on that? If all of that fails then I think V could work. But there is a bigger discussion on using the D key right now. Currently the plan is to map the D key in every mode to the new Transfer Mode operator (#87134). But there is also still the subject on possibly using a different shortcut for that (#87722) but some conflicts need to be resolved for that. Depending on the outcome of that discussion the D key could end up being free or not for 3.0.

Added subscriber: @ZedDB

Added subscriber: @ZedDB

In #88092#1157307, @JulienKaspar wrote:
@ideasman42 I agree it would be best if we resolve this issue as a bug instead of working around it.

I also think it would be better to not work around the core issue and instead fix it.
I've posted my thoughts in the patch review: https://developer.blender.org/D11189#285826

> In #88092#1157307, @JulienKaspar wrote: > @ideasman42 I agree it would be best if we resolve this issue as a bug instead of working around it. I also think it would be better to not work around the core issue and instead fix it. I've posted my thoughts in the patch review: https://developer.blender.org/D11189#285826

Added subscriber: @GeorgiaPacific

Added subscriber: @GeorgiaPacific
Member

Added subscriber: @Imaginer

Added subscriber: @Imaginer
Member

I'd like to mention that this would also conflict with the "Move objects to QCD slots" popup for my Collection Manager addon.
Also, +1 to treating this as a bug and fixing the underlying issue.

I'd like to mention that this would also conflict with the "Move objects to QCD slots" popup for my Collection Manager addon. Also, +1 to treating this as a bug and fixing the underlying issue.
Author
Owner

Note: added "Open Topics" section, would this apply to other views (not just the 3D view), since there are at least 3 items that could be added to most 2D views.

Note: added "Open Topics" section, would this apply to other views (not just the 3D view), since there are at least 3 items that could be added to most 2D views.
Member

In #88092#1160147, @ideasman42 wrote:
Note: added "Open Topics" section, would this apply to other views (not just the 3D view), since there are at least 3 items that could be added to most 2D views.

I think adding a view menu for other editors would probably be a good idea and would keep things consistent. But this seems to be a separate topic unrelated to whether the hotkey is changed?

> In #88092#1160147, @ideasman42 wrote: > Note: added "Open Topics" section, would this apply to other views (not just the 3D view), since there are at least 3 items that could be added to most 2D views. I think adding a view menu for other editors would probably be a good idea and would keep things consistent. But this seems to be a separate topic unrelated to whether the hotkey is changed?

Provide quick access to the view menu

The ability to quickly and confidently (directly) setting view problem is also known to us.
Even during single reference modeling there is need to observe a model and then quickly return to the referenced view, so it have high relevancy value.
Nums are confident and useful, but requires right hand, widget is not direct, since it works relative to current view, and alt+MMB is not that smooth and confident.

At the moment we solved it in a hard way - bought a G300s mouse for modellers in company with additional M5 button,
set it to front view and modified it with Ctrl/Alt/Shift combinations to get immediate right/left/top/bottom/back views, which - of course - is a sin.
We've got the most confident view direction setting action, but this is not a solution that I can be proud of as a workflow designer.

Technically, we didn't found an appropriate solution, that allow to keep attention during modeling, is fast enough and is compatible with possible defaults.

> Provide quick access to the view menu The ability to quickly and confidently (directly) setting view problem is also known to us. Even during single reference [modeling ](https://youtu.be/6bsxPfYouhc?t=247) there is need to observe a model and then quickly return to the referenced view, so it have high relevancy value. Nums are confident and useful, but requires right hand, widget is not direct, since it works relative to current view, and alt+MMB is not that smooth and confident. At the moment we solved it in a hard way - bought a G300s mouse for modellers in company with additional M5 button, set it to front view and modified it with Ctrl/Alt/Shift combinations to get immediate right/left/top/bottom/back views, which - of course - is a sin. We've got the most confident view direction setting action, but this is not a solution that I can be proud of as a workflow designer. Technically, we didn't found an appropriate solution, that allow to keep attention during modeling, is fast enough and is compatible with possible defaults.
Pablo Vazquez changed title from Keymap: use V-key for view navigation pie-menu to Keymap: use D-key for view navigation pie-menu (2nd iteration) 2021-05-20 18:45:36 +02:00
Member

Added subscriber: @pablovazquez

Added subscriber: @pablovazquez
Member

Updated the task description. The main change is to use D instead of V, as the latter is used much more often in many different workflows.

Updated the task description. The main change is to use `D` instead of `V`, as the latter is used much more often in many different workflows.

Added subscriber: @ephraimpauli

Added subscriber: @ephraimpauli
Author
Owner

D11189 has been updated to match changes in this design task.

[D11189](https://archive.blender.org/developer/D11189) has been updated to match changes in this design task.
Member

As far as I know, the PRESS event fires before anything else, so I'm pretty sure that means that the view menu would conflict with annotations.

Edit: looks like this has been accounted for in D11189 and that it's not just press, it's press + motion. Apologies.

As far as I know, the `PRESS` event fires before anything else, so I'm pretty sure that means that the view menu would conflict with annotations. *Edit: looks like this has been accounted for in [D11189](https://archive.blender.org/developer/D11189) and that it's not just press, it's press + motion. Apologies.*

Added subscriber: @Leroy-Xie

Added subscriber: @Leroy-Xie

@ideasman42 Will the fly mode be changed to {key Shift}+{key d}?

@ideasman42 Will the fly mode be changed to {key Shift}+{key d}?
Author
Owner

In #88092#1164365, @Leroy-Xie wrote:
@ideasman42 Will the fly mode be changed to {key Shift}+{key d}?

No, this will be left as-is, as it would conflict with duplicate.

> In #88092#1164365, @Leroy-Xie wrote: > @ideasman42 Will the fly mode be changed to {key Shift}+{key d}? No, this will be left as-is, as it would conflict with duplicate.
Contributor

Removed subscriber: @Gilberto.R

Removed subscriber: @Gilberto.R
Member

In #88092#1164406, @ideasman42 wrote:

In #88092#1164365, @Leroy-Xie wrote:
@ideasman42 Will the fly mode be changed to {key Shift}+{key d}?

No, this will be left as-is, as it would conflict with duplicate.

I'd prefer finding a new place for it - with the ~ it changes position depending on which computer I'm on, so I end up just not using it. But we could also make it use the physical key location. {key Shift D} is not available of course.

> In #88092#1164406, @ideasman42 wrote: >> In #88092#1164365, @Leroy-Xie wrote: >> @ideasman42 Will the fly mode be changed to {key Shift}+{key d}? > > No, this will be left as-is, as it would conflict with duplicate. I'd prefer finding a new place for it - with the `~` it changes position depending on which computer I'm on, so I end up just not using it. But we could also make it use the physical key location. {key Shift D} is not available of course.

In #88092#1168346, @JulianEisel wrote:
it changes position depending on which computer I'm on, so I end up just not using it.

Sure. That means that there is some predefined keyboard layout that can be used for specifying defaults, and, this layout at least don't contain tilda (so, for example, we can define that it is not ANSI layout).
That means that tilda can be occupied by default only with non-critical functions.
Is there an agreement how looks such a layout, suitable for defaults design, to avoid guessing?
Maybe keyboard model number, or set of model numbers?

> In #88092#1168346, @JulianEisel wrote: > it changes position depending on which computer I'm on, so I end up just not using it. Sure. That means that there is some predefined keyboard layout that can be used for specifying defaults, and, this layout at least don't contain tilda (so, for example, we can define that it is not ANSI layout). That means that tilda can be occupied by default only with non-critical functions. Is there an agreement how looks such a layout, suitable for defaults design, to avoid guessing? Maybe keyboard model number, or set of model numbers?
Author
Owner

In #88092#1168346, @JulianEisel wrote:

In #88092#1164406, @ideasman42 wrote:

In #88092#1164365, @Leroy-Xie wrote:
@ideasman42 Will the fly mode be changed to {key Shift}+{key d}?

No, this will be left as-is, as it would conflict with duplicate.

I'd prefer finding a new place for it - with the ~ it changes position depending on which computer I'm on, so I end up just not using it. But we could also make it use the physical key location. {key Shift D} is not available of course.

If there is a good alternative I'm fine with using this too, my only concern is that this means there are more trade offs we have to discuss and agree on before going ahead with this patch - since finding good alternative key-bindings that work across all modes in the 3D viewport is not so easy.

While walk/fly navigation are view related, I don't think it's as a hard requirement that moving the view menu key bindings changes this short-cut too.

Note that Ctrl-Tilda is used to toggle gizmos, if we're changing the use of the Tilda the key we could think of changing this too ... but again this gets into the kind of scope creep which can cause patches to be left in an undecided state for long periods of time. So I'd rather avoid that unless the changes are relatively straightforward.

> In #88092#1168346, @JulianEisel wrote: >> In #88092#1164406, @ideasman42 wrote: >>> In #88092#1164365, @Leroy-Xie wrote: >>> @ideasman42 Will the fly mode be changed to {key Shift}+{key d}? >> >> No, this will be left as-is, as it would conflict with duplicate. > > I'd prefer finding a new place for it - with the `~` it changes position depending on which computer I'm on, so I end up just not using it. But we could also make it use the physical key location. {key Shift D} is not available of course. If there is a good alternative I'm fine with using this too, my only concern is that this means there are more trade offs we have to discuss and agree on before going ahead with this patch - since finding good alternative key-bindings that work across all modes in the 3D viewport is not so easy. While walk/fly navigation are view related, I don't think it's as a hard requirement that moving the view menu key bindings changes this short-cut too. Note that Ctrl-Tilda is used to toggle gizmos, if we're changing the use of the Tilda the key we could think of changing this too ... but again this gets into the kind of scope creep which can cause patches to be left in an undecided state for long periods of time. So I'd rather avoid that unless the changes are relatively straightforward.

Added subscriber: @NoBlahBlah

Added subscriber: @NoBlahBlah

So is this supposed to override an existing keymap/userpref.blend cause that's exactly what happened to me. I get that you want to make the keymap more accessible or better etc etc. But you can't just overwrite an existing userpref.blend without the user's permission. How would you like it if git instead of warning you that you have a merge conflict would just reset and then merge stuff into your local branch without your permission?

So is this supposed to override an existing keymap/userpref.blend cause that's exactly what happened to me. I get that you want to make the keymap more accessible or better etc etc. But you can't just overwrite an existing userpref.blend without the user's permission. How would you like it if git instead of warning you that you have a merge conflict would just reset and then merge stuff into your local branch without your permission?
Author
Owner

Unless you customize it key-map, the default key-map will always be used, that includes any changes to the default key-map as Blender is developed.

Unless you customize it key-map, the default key-map will always be used, that includes any changes to the default key-map as Blender is developed.
Author
Owner

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'
Campbell Barton self-assigned this 2021-06-03 08:32:41 +02:00

Added subscriber: @AnsonX10

Added subscriber: @AnsonX10

I use a keyboard without a numpad, and the tilde key has been a perfectly adequate replacement for it.

Specifically, I frequently press tilde and 1 or 3 in quick succession to either switch to my camera view, or to "view selected." Moving the navigation pie menu to D apparently necessitates changing the event type from a "press" to a "click drag" which breaks the workflow of pressing a number key to access the pie menu's features (at least without moving the mouse first, which makes the number key shortcut pointless).

While D is a very convenient key (at least on qwerty keyboards), I'm not convinced it should replace tilde as the view navigation pie key. Particularly when it breaks other features.

I'm in the camp that believes that the key left of the 1 key (or whatever is in that physical location) should call the pie menu on all keyboards, rather than moving it somewhere else. At least for the time being. I'm not opposed to seeking better and more efficient key mappings, but this feels like a step backwards, and a hasty one at that.

I use a keyboard without a numpad, and the tilde key has been a perfectly adequate replacement for it. Specifically, I frequently press tilde and 1 or 3 in quick succession to either switch to my camera view, or to "view selected." Moving the navigation pie menu to D apparently necessitates changing the event type from a "press" to a "click drag" which breaks the workflow of pressing a number key to access the pie menu's features (at least without moving the mouse first, which makes the number key shortcut pointless). While D is a very convenient key (at least on qwerty keyboards), I'm not convinced it should replace tilde as the view navigation pie key. Particularly when it breaks other features. I'm in the camp that believes that the key left of the 1 key (or whatever is in that physical location) should call the pie menu on all keyboards, rather than moving it somewhere else. At least for the time being. I'm not opposed to seeking better and more efficient key mappings, but this feels like a step backwards, and a hasty one at that.

Added subscriber: @thinsoldier

Added subscriber: @thinsoldier

How about using the V key? V as in View. It's not used for anything in Object Mode. In Edit Mode on meshes it's used for Rip but I think that alt+v for Rip would be more consistent with the rest of Blender. In Edit Mode on curves it opens a "set handle type" menu that is the same as what's found in the right click menu. Also alt+v is not used for anything when editing curves.

How about using the V key? V as in View. It's not used for anything in Object Mode. In Edit Mode on meshes it's used for Rip but I think that alt+v for Rip would be more consistent with the rest of Blender. In Edit Mode on curves it opens a "set handle type" menu that is the same as what's found in the right click menu. Also alt+v is not used for anything when editing curves.
Author
Owner

The V-key is used for:

  • set handle type in:
    • graph-editor.
    • action-editor.
    • gpencil-curve editing.
    • curve edit-mode.
  • in weight paint for setting vertex selection.
  • in edit-mesh for rip.
  • in the UV-editor for rip.
  • in grease pencil edit-mode (for a kind of rip).

Changing this shortcut is quite disruptive. Further, modifier combinations using V are already used in some contexts too.

We could instead make sure the key to the left of 1 (typically the ~ key) is always available for view operations.

The V-key is used for: - set handle type in: - graph-editor. - action-editor. - gpencil-curve editing. - curve edit-mode. - in weight paint for setting vertex selection. - in edit-mesh for rip. - in the UV-editor for rip. - in grease pencil edit-mode (for a kind of rip). Changing this shortcut is quite disruptive. Further, modifier combinations using V are already used in some contexts too. We could instead make sure the key to the left of 1 (typically the `~` key) is always available for view operations.

D key can be associated with View Direction.

D key can be associated with View Direction.

Speaking of V, as it turned out, V for merge, Alt+V for rip and Shift+V for Join better fits relevance and reduces stress on the wrist by reducing using right side of a keyboard for a relevant modeling actions, since they became accessible from a single wrist position.

Speaking of V, as it turned out, V for merge, Alt+V for rip and Shift+V for Join better fits relevance and reduces stress on the wrist by reducing using right side of a keyboard for a relevant modeling actions, since they became accessible from a single wrist position.
Thomas Dinges added this to the 3.0 milestone 2023-02-08 15:59:11 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
14 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#88092
No description provided.