diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2022-01-31 13:45:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-31 13:45:52 +0100 |
commit | be60e04639dbf906d5b38947b670ac5d8da16182 (patch) | |
tree | 47745f820de4026a30971397614595866d6ae979 /scene/gui/control.cpp | |
parent | 2c85f2a8f60d691c126f87f9cd831d50d272e499 (diff) | |
parent | e1148cc452c1a627974d5d63e95cfc12bf6fa319 (diff) |
Merge pull request #57481 from bruvzg/restore_snap_controls_to_pixels
Diffstat (limited to 'scene/gui/control.cpp')
-rw-r--r-- | scene/gui/control.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/scene/gui/control.cpp b/scene/gui/control.cpp index 562ea8a8f7..7ebc5c27f8 100644 --- a/scene/gui/control.cpp +++ b/scene/gui/control.cpp @@ -576,6 +576,11 @@ void Control::_update_canvas_item_transform() { Transform2D xform = _get_internal_transform(); xform[2] += get_position(); + // We use a little workaround to avoid flickering when moving the pivot with _edit_set_pivot() + if (is_inside_tree() && Math::abs(Math::sin(data.rotation * 4.0f)) < 0.00001f && get_viewport()->is_snap_controls_to_pixels_enabled()) { + xform[2] = xform[2].round(); + } + RenderingServer::get_singleton()->canvas_item_set_transform(get_canvas_item(), xform); } |