Skip to content

Commit 478ace3

Browse files
authored
Fix a layer's transform being reset when it's reordered within its same parent (#2624)
Fix layer transform reset when being reordered within the same group/parent
1 parent 80b8df8 commit 478ace3

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

editor/src/messages/portfolio/document/document_message_handler.rs

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -684,15 +684,17 @@ impl MessageHandler<DocumentMessage, DocumentMessageData<'_>> for DocumentMessag
684684
insert_index: calculated_insert_index,
685685
});
686686

687-
let layer_local_transform = self.network_interface.document_metadata().transform_to_viewport(layer_to_move);
688-
let undo_transform = self.network_interface.document_metadata().transform_to_viewport(parent).inverse();
689-
let transform = undo_transform * layer_local_transform;
690-
responses.add(GraphOperationMessage::TransformSet {
691-
layer: layer_to_move,
692-
transform,
693-
transform_in: TransformIn::Local,
694-
skip_rerender: false,
695-
});
687+
if layer_to_move.parent(self.metadata()) != Some(parent) {
688+
let layer_local_transform = self.network_interface.document_metadata().transform_to_viewport(layer_to_move);
689+
let undo_transform = self.network_interface.document_metadata().transform_to_viewport(parent).inverse();
690+
let transform = undo_transform * layer_local_transform;
691+
responses.add(GraphOperationMessage::TransformSet {
692+
layer: layer_to_move,
693+
transform,
694+
transform_in: TransformIn::Local,
695+
skip_rerender: false,
696+
});
697+
}
696698
}
697699

698700
responses.add(NodeGraphMessage::RunDocumentGraph);

0 commit comments

Comments
 (0)