Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 1080 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 441.87
Broken: version: 2.83.0, branch: master, commit date: 2020-06-03 12:23, hash: rB82e3bd4bbb82
Short description of error
When an operator is called by a gizmo, the combination of the event ALT or CTRL or SHIFT + LEFTMOUSE always initialize the operator by calling the invoke().
Other combination of keys + LEFTMOUSE does not call the invoke()
This problem makes impossible to take into account the industry compatible keymap in the 3dview with the target_set_operator in gizmo.
Exact steps for others to reproduce the error
Open the file gizmo_operator_invoke.blend
- Toggle the system console to view the prints
- Run the script :
- In the 3dView, click once on the gizmo (gizmo now follows you mouse)
- now press Alt and start clicking -- using the combination ALT+LEFTMOUSE will call invoke() [inspect in the console] each time
- use RIGHTCLICK or ESC repeatedly to stop the modal (if you clicked multiple times you have to do RMB multiple times as well )
- now press S and start clicking -- use the combination "S"+LEFTMOUSE will not call invoke() [inspect in the console] each time
- use RIGHTCLICK or ESC a single time to stop the modal
Note: in a Debug build, an Assert should be triggered when pressing Alt and start clicking
BLI_assert failed: source/blender/windowmanager/gizmo/intern/wm_gizmo_map.c:1068, wm_gizmomap_modal_set(), at 'gzmap->gzmap_context.modal == ((void *)0)'
Thanks for your help