From c0d4ac1ec6a95fb962963da0e3830044dd0193a3 Mon Sep 17 00:00:00 2001 From: Antonio Vazquez Date: Thu, 29 Sep 2022 13:38:12 +0200 Subject: Fix T101455: GPencil Gizmo in wrong location when using Active Element The gizmo was not set when this option was selected. By design, in grease pencil the active element option uses the object origin as pivot point. --- source/blender/editors/transform/transform_gizmo_3d.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c index 8e6a6c2c411..32e9421f50d 100644 --- a/source/blender/editors/transform/transform_gizmo_3d.c +++ b/source/blender/editors/transform/transform_gizmo_3d.c @@ -1101,8 +1101,13 @@ static void gizmo_prepare_mat(const bContext *C, if (scene->toolsettings->transform_pivot_point == V3D_AROUND_ACTIVE) { bGPdata *gpd = CTX_data_gpencil_data(C); + /* Grease Pencil uses object origin. */ if (gpd && (gpd->flag & GP_DATA_STROKE_EDITMODE)) { - /* pass */ + BKE_view_layer_synced_ensure(scene, view_layer); + Object *ob = BKE_view_layer_active_object_get(view_layer); + if (ob != NULL) { + ED_object_calc_active_center(ob, false, rv3d->twmat[3]); + } } else { BKE_view_layer_synced_ensure(scene, view_layer); -- cgit v1.2.3