[Bf-blender-cvs] [d6cc16831ac] blender-v2.83-release: Fix T73594: Scale Cage sometimes has incorrect center in edit mode

Germano Cavalcante noreply at git.blender.org
Tue May 19 21:30:41 CEST 2020


Commit: d6cc16831ac0c9723fccca3dc98cbf02113f648c
Author: Germano Cavalcante
Date:   Tue May 19 16:29:31 2020 -0300
Branches: blender-v2.83-release
https://developer.blender.org/rBd6cc16831ac0c9723fccca3dc98cbf02113f648c

Fix T73594: Scale Cage sometimes has incorrect center in edit mode

Differential Revision: https://developer.blender.org/D6803

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

M	source/blender/editors/transform/transform_gizmo_3d.c

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

diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c
index 4e0bebe2f4c..d7461e1de0c 100644
--- a/source/blender/editors/transform/transform_gizmo_3d.c
+++ b/source/blender/editors/transform/transform_gizmo_3d.c
@@ -2199,6 +2199,15 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmGizmoGroup *gzgr
     WM_gizmo_set_flag(gz, WM_GIZMO_HIDDEN, true);
   }
   else {
+    ViewLayer *view_layer = CTX_data_view_layer(C);
+    Object *ob = OBACT(view_layer);
+    if (ob && ob->mode & OB_MODE_EDIT) {
+      copy_m4_m4(gz->matrix_space, ob->obmat);
+    }
+    else {
+      unit_m4(gz->matrix_space);
+    }
+
     gizmo_prepare_mat(C, rv3d, &tbounds);
 
     WM_gizmo_set_flag(gz, WM_GIZMO_HIDDEN, false);
@@ -2256,15 +2265,6 @@ static void WIDGETGROUP_xform_cage_message_subscribe(const bContext *C,
 static void WIDGETGROUP_xform_cage_draw_prepare(const bContext *C, wmGizmoGroup *gzgroup)
 {
   struct XFormCageWidgetGroup *xgzgroup = gzgroup->customdata;
-  wmGizmo *gz = xgzgroup->gizmo;
-  ViewLayer *view_layer = CTX_data_view_layer(C);
-  Object *ob = OBACT(view_layer);
-  if (ob && ob->mode & OB_MODE_EDIT) {
-    copy_m4_m4(gz->matrix_space, ob->obmat);
-  }
-  else {
-    unit_m4(gz->matrix_space);
-  }
 
   RegionView3D *rv3d = CTX_wm_region_view3d(C);
   {



More information about the Bf-blender-cvs mailing list