Fix fill tool on raster image temporarily breaking the graph (#2398)

* Fix fill tool on raster image temporarily breaks the graph

* Avoid vector filling raster layer via checking node category

* check raster image using input type instead

* Add additional check for TextureFrameTable

* Enable the ignore raster test

---------

Co-authored-by: hypercube <0hypercube@gmail.com>
This commit is contained in:
Ellen Gu
2025-03-09 19:18:42 +00:00
committed by GitHub
co-authored by hypercube
parent 56662339cc
commit 74b6abbb97
11 changed files with 35 additions and 13 deletions
@@ -1655,7 +1655,7 @@ impl DocumentMessageHandler {
path.pop();
}
}
structure_section.push(space | 1 << 63);
structure_section.push(space | (1 << 63));
}
/// Serializes the layer structure into a condensed 1D structure.
@@ -1095,7 +1095,7 @@ fn static_nodes() -> Vec<DocumentNodeDefinition> {
},
DocumentNodeDefinition {
identifier: "Image",
category: "",
category: "Raster",
node_template: NodeTemplate {
document_node: DocumentNode {
implementation: DocumentNodeImplementation::Network(NodeNetwork {
@@ -366,7 +366,7 @@ impl NodeNetworkInterface {
// If a chain node does not have a selected downstream layer, then set the position to absolute
let downstream_layer = self.downstream_layer(node_id, network_path);
if downstream_layer.map_or(true, |downstream_layer| new_ids.keys().all(|key| *key != downstream_layer.to_node())) {
if downstream_layer.is_none_or(|downstream_layer| new_ids.keys().all(|key| *key != downstream_layer.to_node())) {
let Some(position) = self.position(node_id, network_path) else {
log::error!("Could not get position in create_node_template");
return None;