From f6c2f1c65e146bf20b9182f275b67c747d9e2990 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(-) (limited to 'source') 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