[Bf-blender-cvs] [d33c27d68bb] blender-v2.83-release: Fix T75457: Toggle brushes using same hotkey twice is broken
Philipp Oeser
noreply at git.blender.org
Wed May 20 15:16:43 CEST 2020
Commit: d33c27d68bb3dfa6f2a5690657ee820e9d65822c
Author: Philipp Oeser
Date: Tue May 19 09:47:13 2020 +0200
Branches: blender-v2.83-release
https://developer.blender.org/rBd33c27d68bb3dfa6f2a5690657ee820e9d65822c
Fix T75457: Toggle brushes using same hotkey twice is broken
Caused by rB47da01a4db1d.
Above commit did not change the toolname it was setting when the brush
was actually toggled.
Maniphest Tasks: T75457
Differential Revision: https://developer.blender.org/D7792
===================================================================
M source/blender/editors/sculpt_paint/paint_ops.c
===================================================================
diff --git a/source/blender/editors/sculpt_paint/paint_ops.c b/source/blender/editors/sculpt_paint/paint_ops.c
index d607b6a9d6f..c2b771088a8 100644
--- a/source/blender/editors/sculpt_paint/paint_ops.c
+++ b/source/blender/editors/sculpt_paint/paint_ops.c
@@ -731,7 +731,14 @@ static bool brush_generic_tool_set(bContext *C,
WM_main_add_notifier(NC_BRUSH | NA_EDITED, brush);
/* Tool System
- * This is needed for when there is a non-sculpt tool active (transform for e.g.) */
+ * This is needed for when there is a non-sculpt tool active (transform for e.g.).
+ * In case we are toogling (and the brush changed to the toggle_brush), we need to get the
+ * tool_name again. */
+ int tool_result = brush_tool(brush, paint->runtime.tool_offset);
+ ePaintMode paint_mode = BKE_paintmode_get_active_from_context(C);
+ const EnumPropertyItem *items = BKE_paint_get_tool_enum_from_paintmode(paint_mode);
+ RNA_enum_name_from_value(items, tool_result, &tool_name);
+
char tool_id[MAX_NAME];
SNPRINTF(tool_id, "builtin_brush.%s", tool_name);
WM_toolsystem_ref_set_by_id(C, tool_id);
More information about the Bf-blender-cvs
mailing list