From 829812f180b011dab2c0f09cc3cfd155794b5b8b Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 21 Feb 2022 23:09:34 +1100 Subject: [PATCH] Fix T92467: Path Selection broken when Drag is set to Tweak When RMB-select uses "Select Tweak" as a fallback tool, ignore all bindings mapped to the Control key as these are used for path selection. This was fixed in 2a2d873124111b5fcbc2c3c59f73fd1f946c3548 however that caused shift-select to fail (T93100). --- .../presets/keyconfig/keymap_data/blender_default.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py index 5e6145723f4..b4f684fa5cc 100644 --- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py +++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py @@ -4668,7 +4668,9 @@ def _template_paint_radial_control(paint, rotation=False, secondary_rotation=Fal return items -def _template_view3d_select(*, type, value, legacy): +def _template_view3d_select(*, type, value, legacy, exclude_mod=None): + # NOTE: `exclude_mod` is needed since we don't want this tool to exclude Control-RMB actions when this is used + # as a tool key-map with RMB-select and `use_fallback_tool_rmb` is enabled. See T92467. return [( "view3d.select", {"type": type, "value": value, **{m: True for m in mods}}, @@ -4682,7 +4684,7 @@ def _template_view3d_select(*, type, value, legacy): (("center", "enumerate"), ("ctrl", "alt")), (("toggle", "enumerate"), ("shift", "alt")), (("toggle", "center", "enumerate"), ("shift", "ctrl", "alt")), - )] + ) if exclude_mod is None or exclude_mod not in mods] def _template_view3d_gpencil_select(*, type, value, legacy, use_select_mouse=True): @@ -6490,7 +6492,7 @@ def km_3d_view_tool_select(params, *, fallback): *([] if (fallback and (params.select_mouse == 'RIGHTMOUSE')) else _template_items_tool_select( params, "view3d.select", "view3d.cursor3d", extend="toggle")), *([] if (not params.use_fallback_tool_rmb) else _template_view3d_select( - type=params.select_mouse, value=params.select_mouse_value, legacy=params.legacy)), + type=params.select_mouse, value=params.select_mouse_value, legacy=params.legacy, exclude_mod="ctrl")), ]}, )