mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-20 22:28:01 +08:00
Add shifting of layers in stacks as blocks that collide and bump other layers/nodes (#1940)
* Shift nodes as blocks * Implement rubber banding * Improve upstream locking when shifting layers * WIP: Reworked shifting * WIP: Reworked node shifting * Finish shifting * Fix demo artwork * Code review * Right click to end shift * Improve rubber banding * Fix clippy issues * Skip collision for intersecting nodes * Rubber banding bug fix * Fix ctrl+delete node in chain * Grip drag * Fix layer width * Add icon to frontend for the solo drag grip * Reconnect during ctrl+delete * Code review --------- Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
co-authored by
Keavon Chambers
parent
a7840b252d
commit
78337f9b8e
@@ -622,7 +622,10 @@ impl EditorHandle {
|
||||
self.dispatch(message);
|
||||
|
||||
let id = NodeId(id);
|
||||
let message = NodeGraphMessage::DeleteNodes { node_ids: vec![id], reconnect: true };
|
||||
let message = NodeGraphMessage::DeleteNodes {
|
||||
node_ids: vec![id],
|
||||
delete_children: true,
|
||||
};
|
||||
self.dispatch(message);
|
||||
}
|
||||
|
||||
@@ -779,7 +782,7 @@ impl EditorHandle {
|
||||
.map(|(id, _)| *id)
|
||||
.collect::<Vec<_>>()
|
||||
{
|
||||
let layer = LayerNodeIdentifier::new(node, &document.network_interface);
|
||||
let layer = LayerNodeIdentifier::new(node, &document.network_interface, &[]);
|
||||
if layer.has_children(document.metadata()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user