Skip to content

Commit 81733e6

Browse files
committed
Merge pull request #99506 from Giganzo/scale-2d-selection
Change how multi selection scale is applied to canvas item
2 parents 29e6ef4 + c4bb252 commit 81733e6

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

editor/plugins/canvas_item_editor_plugin.cpp

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1995,15 +1995,14 @@ bool CanvasItemEditor::_gui_input_scale(const Ref<InputEvent> &p_event) {
19951995
}
19961996
}
19971997

1998+
Transform2D edit_transform;
1999+
bool using_temp_pivot = !Math::is_inf(temp_pivot.x) || !Math::is_inf(temp_pivot.y);
2000+
if (using_temp_pivot) {
2001+
edit_transform = Transform2D(drag_selection.front()->get()->_edit_get_rotation(), temp_pivot);
2002+
} else {
2003+
edit_transform = drag_selection.front()->get()->_edit_get_transform();
2004+
}
19982005
for (CanvasItem *ci : drag_selection) {
1999-
Transform2D edit_transform;
2000-
bool using_temp_pivot = !Math::is_inf(temp_pivot.x) || !Math::is_inf(temp_pivot.y);
2001-
if (using_temp_pivot) {
2002-
edit_transform = Transform2D(ci->_edit_get_rotation(), temp_pivot);
2003-
} else {
2004-
edit_transform = ci->_edit_get_transform();
2005-
}
2006-
20072006
Transform2D parent_xform = ci->get_global_transform_with_canvas() * ci->get_transform().affine_inverse();
20082007
Transform2D unscaled_transform = (transform * parent_xform * edit_transform).orthonormalized();
20092008
Transform2D simple_xform = (viewport->get_transform() * unscaled_transform).affine_inverse() * transform;

0 commit comments

Comments
 (0)