[Bf-blender-cvs] [cf6c0760464] blender-v2.91-release: Fix T82077: Tools popup error in the image editor

Ryan Inch noreply at git.blender.org
Mon Oct 26 11:09:12 CET 2020


Commit: cf6c0760464faf0308ca8d3b52fc0a7aaf91a214
Author: Ryan Inch
Date:   Mon Oct 26 21:03:25 2020 +1100
Branches: blender-v2.91-release
https://developer.blender.org/rBcf6c0760464faf0308ca8d3b52fc0a7aaf91a214

Fix T82077: Tools popup error in the image editor

Add check for an image space type.

Ref D9347

===================================================================

M	release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py

===================================================================

diff --git a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
index e18cca7fe25..ebc5370a7af 100644
--- a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
+++ b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
@@ -192,16 +192,25 @@ def generate(context, space_type, use_fallback_keys=True, use_reset=True):
                     # PAINT_OT_brush_select
                     mode = context.active_object.mode
                     # See: BKE_paint_get_tool_prop_id_from_paintmode
-                    attr = {
-                        'SCULPT': "sculpt_tool",
-                        'VERTEX_PAINT': "vertex_tool",
-                        'WEIGHT_PAINT': "weight_tool",
-                        'TEXTURE_PAINT': "image_tool",
-                        'PAINT_GPENCIL': "gpencil_tool",
-                        'VERTEX_GPENCIL': "gpencil_vertex_tool",
-                        'SCULPT_GPENCIL': "gpencil_sculpt_tool",
-                        'WEIGHT_GPENCIL': "gpencil_weight_tool",
-                    }.get(mode, None)
+                    if space_type == 'IMAGE_EDITOR':
+                        if context.space_data.ui_mode == 'PAINT':
+                            attr = "image_tool"
+                        else:
+                            attr = None
+                    elif space_type == 'VIEW_3D':
+                        attr = {
+                            'SCULPT': "sculpt_tool",
+                            'VERTEX_PAINT': "vertex_tool",
+                            'WEIGHT_PAINT': "weight_tool",
+                            'TEXTURE_PAINT': "image_tool",
+                            'PAINT_GPENCIL': "gpencil_tool",
+                            'VERTEX_GPENCIL': "gpencil_vertex_tool",
+                            'SCULPT_GPENCIL': "gpencil_sculpt_tool",
+                            'WEIGHT_GPENCIL': "gpencil_weight_tool",
+                        }.get(mode, None)
+                    else:
+                        attr = None
+
                     if attr is not None:
                         setattr(kmi_hack_brush_select_properties, attr, item.data_block)
                         kmi_found = wm.keyconfigs.find_item_from_operator(



More information about the Bf-blender-cvs mailing list