diff options
author | Germano Cavalcante <germano.costa@ig.com.br> | 2021-11-08 02:45:19 +0300 |
---|---|---|
committer | Germano Cavalcante <germano.costa@ig.com.br> | 2021-11-08 02:45:19 +0300 |
commit | 4f387e66ac85dceaa2a50f496d6f43811379b866 (patch) | |
tree | 9945d234976e1db1ef3f0e6aefad00a4be5db4bf /source/blender/editors/space_view3d | |
parent | 892da668dc0d81eaa1bc01f2779a652392b7767d (diff) | |
parent | 56ee96349dce3826999a1ebcfff890d8066dce50 (diff) |
Merge branch 'blender-v3.0-release'
Diffstat (limited to 'source/blender/editors/space_view3d')
-rw-r--r-- | source/blender/editors/space_view3d/view3d_cursor_snap.c | 11 | ||||
-rw-r--r-- | source/blender/editors/space_view3d/view3d_placement.c | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/source/blender/editors/space_view3d/view3d_cursor_snap.c b/source/blender/editors/space_view3d/view3d_cursor_snap.c index 479acb3cb1a..fbdab71ec1d 100644 --- a/source/blender/editors/space_view3d/view3d_cursor_snap.c +++ b/source/blender/editors/space_view3d/view3d_cursor_snap.c @@ -778,10 +778,13 @@ static bool v3d_cursor_snap_pool_fn(bContext *C) }; V3DSnapCursorState *state = ED_view3d_cursor_snap_state_get(); - if (state->region && (state->region != region)) { - /* Some gizmos are still available even when the region is not available. - * We need to disable the cursor in these cases. */ - return false; + if (state->gzgrp_type) { + /* Check the respective gizmo group is in the region. */ + wmGizmoMap *gzmap = region->gizmo_map; + if (WM_gizmomap_group_find_ptr(gzmap, state->gzgrp_type) == NULL) { + /* Wrong viewport. */ + return false; + } } return true; diff --git a/source/blender/editors/space_view3d/view3d_placement.c b/source/blender/editors/space_view3d/view3d_placement.c index 7ad512fd029..f60df27d0f9 100644 --- a/source/blender/editors/space_view3d/view3d_placement.c +++ b/source/blender/editors/space_view3d/view3d_placement.c @@ -1519,7 +1519,7 @@ static void WIDGETGROUP_placement_setup(const bContext *C, wmGizmoGroup *gzgroup { V3DSnapCursorState *snap_state = ED_view3d_cursor_snap_active(); if (snap_state) { - snap_state->region = CTX_wm_region(C); + snap_state->gzgrp_type = gzgroup->type; snap_state->draw_plane = true; gzgroup->customdata = snap_state; |