Code

Enable center-dragging of boxes in Z direction by using Shift
[inkscape.git] / src / object-edit.cpp
index 2ebb2a0651bb797bb95bfffb7b9b34d11e885753..bb98c6b681715fe890f70e409a5512eaab2ea74f 100644 (file)
@@ -652,7 +652,11 @@ static void sp_3dbox_knot_set(SPItem *item, guint knot_id, NR::Point const &new_
 static void sp_3dbox_knot_center_set(SPItem *item, NR::Point const &new_pos, NR::Point const &origin, guint state)
 {
     NR::Matrix const i2d (sp_item_i2d_affine (item));
-    sp_3dbox_recompute_XY_corners_from_new_center (SP_3DBOX (item), new_pos * i2d);
+    if (state & GDK_SHIFT_MASK) {
+        sp_3dbox_recompute_Z_corners_from_new_center (SP_3DBOX (item), new_pos * i2d);
+    } else {
+        sp_3dbox_recompute_XY_corners_from_new_center (SP_3DBOX (item), new_pos * i2d);
+    }
 
     sp_3dbox_update_curves (SP_3DBOX(item));
 }