diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index 853dfccc626..9224f612510 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -551,6 +551,7 @@ class _draw_tool_settings_context_mode: row.prop(brush.curves_sculpt_settings, "density_mode", text="", expand=True) row = layout.row(align=True) row.prop(brush.curves_sculpt_settings, "minimum_distance") + row.operator_context = 'INVOKE_REGION_WIN' row.operator("sculpt_curves.min_distance_edit", text="", icon='DRIVER_DISTANCE') row = layout.row(align=True) row.enabled = brush.curves_sculpt_settings.density_mode != 'REMOVE' diff --git a/source/blender/editors/sculpt_paint/curves_sculpt_ops.cc b/source/blender/editors/sculpt_paint/curves_sculpt_ops.cc index 32a6a7a9b0f..2d3fc46ad50 100644 --- a/source/blender/editors/sculpt_paint/curves_sculpt_ops.cc +++ b/source/blender/editors/sculpt_paint/curves_sculpt_ops.cc @@ -908,6 +908,9 @@ namespace min_distance_edit { static bool min_distance_edit_poll(bContext *C) { + if (!CTX_wm_region_view3d(C)) { + return false; + } Object *ob = CTX_data_active_object(C); if (ob == nullptr) { return false; @@ -1173,7 +1176,7 @@ static int min_distance_edit_invoke(bContext *C, wmOperator *op, const wmEvent * /* Add minimum distance paint cursor. */ op_data->cursor = WM_paint_cursor_activate( - SPACE_TYPE_ANY, RGN_TYPE_ANY, op->type->poll, min_distance_edit_draw, op_data); + SPACE_VIEW3D, RGN_TYPE_WINDOW, op->type->poll, min_distance_edit_draw, op_data); WM_event_add_modal_handler(C, op); ED_region_tag_redraw(region);