diff --git a/editor/src/dispatcher.rs b/editor/src/dispatcher.rs index 3d86309f..c2b4903f 100644 --- a/editor/src/dispatcher.rs +++ b/editor/src/dispatcher.rs @@ -364,6 +364,7 @@ mod test { nodes: HashMap::new(), parent: LayerNodeIdentifier::ROOT, insert_index: -1, + alias: String::new(), }); editor.handle_message(NodeGraphMessage::SelectedNodesSet { nodes: vec![FOLDER_ID] }); diff --git a/editor/src/messages/portfolio/document/document_message_handler.rs b/editor/src/messages/portfolio/document/document_message_handler.rs index 46238c34..ca1d4ad4 100644 --- a/editor/src/messages/portfolio/document/document_message_handler.rs +++ b/editor/src/messages/portfolio/document/document_message_handler.rs @@ -370,6 +370,7 @@ impl MessageHandler> for DocumentMessageHand nodes: HashMap::new(), parent, insert_index: -1, + alias: String::new(), }); responses.add(NodeGraphMessage::SelectedNodesSet { nodes: vec![id] }); } @@ -423,7 +424,13 @@ impl MessageHandler> for DocumentMessageHand let id = NodeId(generate_uuid()); let insert_index = -1; - responses.add(GraphOperationMessage::NewCustomLayer { id, nodes, parent, insert_index }); + responses.add(GraphOperationMessage::NewCustomLayer { + id, + nodes, + parent, + insert_index, + alias: String::new(), + }); } } FlipSelectedLayers { flip_axis } => { @@ -501,6 +508,7 @@ impl MessageHandler> for DocumentMessageHand nodes: HashMap::new(), parent, insert_index: calculated_insert_index.unwrap_or(-1), + alias: String::new(), }); responses.add(PortfolioMessage::PasteIntoFolder { clipboard: Clipboard::Internal, diff --git a/editor/src/messages/portfolio/document/node_graph/graph_operation_message.rs b/editor/src/messages/portfolio/document/node_graph/graph_operation_message.rs index ffec1511..959bd27c 100644 --- a/editor/src/messages/portfolio/document/node_graph/graph_operation_message.rs +++ b/editor/src/messages/portfolio/document/node_graph/graph_operation_message.rs @@ -81,6 +81,7 @@ pub enum GraphOperationMessage { nodes: HashMap, parent: LayerNodeIdentifier, insert_index: isize, + alias: String, }, NewVectorLayer { id: NodeId, diff --git a/editor/src/messages/portfolio/document/node_graph/graph_operation_message_handler.rs b/editor/src/messages/portfolio/document/node_graph/graph_operation_message_handler.rs index ce630c7a..11b3ebbe 100644 --- a/editor/src/messages/portfolio/document/node_graph/graph_operation_message_handler.rs +++ b/editor/src/messages/portfolio/document/node_graph/graph_operation_message_handler.rs @@ -670,7 +670,13 @@ impl MessageHandler> for Gr modify_inputs.insert_image_data(image_frame, layer); } } - GraphOperationMessage::NewCustomLayer { id, nodes, parent, insert_index } => { + GraphOperationMessage::NewCustomLayer { + id, + nodes, + parent, + insert_index, + alias, + } => { trace!("Inserting new layer {id} as a child of {parent:?} at index {insert_index}"); let mut modify_inputs = ModifyInputsContext::new(document_network, document_metadata, node_graph, responses); @@ -678,6 +684,10 @@ impl MessageHandler> for Gr if let Some(layer) = modify_inputs.create_layer_with_insert_index(id, insert_index, parent) { let new_ids: HashMap<_, _> = nodes.iter().map(|(&id, _)| (id, NodeId(generate_uuid()))).collect(); + if let Some(node) = modify_inputs.document_network.nodes.get_mut(&id) { + node.alias = alias.clone(); + } + let shift = nodes .get(&NodeId(0)) .and_then(|node| { diff --git a/editor/src/messages/portfolio/document/utility_types/clipboards.rs b/editor/src/messages/portfolio/document/utility_types/clipboards.rs index c4f16984..b4dd60df 100644 --- a/editor/src/messages/portfolio/document/utility_types/clipboards.rs +++ b/editor/src/messages/portfolio/document/utility_types/clipboards.rs @@ -21,4 +21,5 @@ pub struct CopyBufferEntry { pub nodes: HashMap, pub selected: bool, pub collapsed: bool, + pub alias: String, } diff --git a/editor/src/messages/portfolio/portfolio_message_handler.rs b/editor/src/messages/portfolio/portfolio_message_handler.rs index 0bd44b95..2e65ba7b 100644 --- a/editor/src/messages/portfolio/portfolio_message_handler.rs +++ b/editor/src/messages/portfolio/portfolio_message_handler.rs @@ -180,6 +180,8 @@ impl MessageHandler