diff --git a/editor/src/messages/portfolio/document/utility_types/clipboards.rs b/editor/src/messages/portfolio/document/utility_types/clipboards.rs index cf53fe27..549fd482 100644 --- a/editor/src/messages/portfolio/document/utility_types/clipboards.rs +++ b/editor/src/messages/portfolio/document/utility_types/clipboards.rs @@ -19,6 +19,7 @@ pub const INTERNAL_CLIPBOARD_COUNT: u8 = Clipboard::_InternalClipboardCount as u pub struct CopyBufferEntry { pub nodes: HashMap, pub selected: bool, + pub disabled: 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 215443b4..8e8737a6 100644 --- a/editor/src/messages/portfolio/portfolio_message_handler.rs +++ b/editor/src/messages/portfolio/portfolio_message_handler.rs @@ -202,6 +202,7 @@ impl MessageHandler> for PortfolioMes ) .collect(), selected: active_document.selected_nodes.selected_layers_contains(layer, active_document.metadata()), + disabled: !active_document.selected_nodes.layer_visible(layer, active_document.network(), active_document.metadata()), collapsed: false, alias: previous_alias, }); @@ -387,6 +388,9 @@ impl MessageHandler> for PortfolioMes if entry.selected { responses.add(NodeGraphMessage::SelectedNodesAdd { nodes: vec![id] }); } + if entry.disabled { + responses.add(NodeGraphMessage::SetHidden { node_id: id, hidden: entry.disabled }); + } } }; @@ -415,6 +419,9 @@ impl MessageHandler> for PortfolioMes if entry.selected { responses.add(NodeGraphMessage::SelectedNodesAdd { nodes: vec![id] }); } + if entry.disabled { + responses.add(NodeGraphMessage::SetHidden { node_id: id, hidden: entry.disabled }); + } } responses.add(DocumentMessage::CommitTransaction);