1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-08 12:40:44 +00:00

Fix transform notification not getting sent out for RigidBody2D

This commit is contained in:
Mikael Hermansson
2023-11-13 15:44:32 +01:00
parent 59457685c1
commit 9fb0b52608

View File

@@ -891,15 +891,13 @@ void CanvasItem::_notify_transform(CanvasItem *p_node) {
* notification anyway). * notification anyway).
*/ */
if (/*p_node->xform_change.in_list() &&*/ p_node->_is_global_invalid()) { if (p_node->block_transform_notify || p_node->_is_global_invalid()) {
return; //nothing to do return; //nothing to do
} }
p_node->_set_global_invalid(true); p_node->_set_global_invalid(true);
if (p_node->notify_transform && !p_node->xform_change.in_list()) { if (p_node->notify_transform && !p_node->xform_change.in_list() && p_node->is_inside_tree()) {
if (!p_node->block_transform_notify) {
if (p_node->is_inside_tree()) {
if (is_accessible_from_caller_thread()) { if (is_accessible_from_caller_thread()) {
get_tree()->xform_change_list.add(&p_node->xform_change); get_tree()->xform_change_list.add(&p_node->xform_change);
} else { } else {
@@ -907,8 +905,6 @@ void CanvasItem::_notify_transform(CanvasItem *p_node) {
MessageQueue::get_singleton()->push_callable(callable_mp(p_node, &CanvasItem::_notify_transform_deferred)); MessageQueue::get_singleton()->push_callable(callable_mp(p_node, &CanvasItem::_notify_transform_deferred));
} }
} }
}
}
for (CanvasItem *ci : p_node->children_items) { for (CanvasItem *ci : p_node->children_items) {
if (ci->top_level) { if (ci->top_level) {