Skip to content

Commit ad00530

Browse files
Remove surface and window from ApplicationIo
1 parent bf486b4 commit ad00530

15 files changed

Lines changed: 220 additions & 666 deletions

File tree

Cargo.lock

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

desktop/wrapper/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ impl DesktopWrapper {
5151
pub async fn execute_node_graph() -> NodeGraphExecutionResult {
5252
let result = graphite_editor::node_graph_executor::run_node_graph().await;
5353
match result {
54-
(true, texture) => NodeGraphExecutionResult::HasRun(texture.map(|t| t.texture)),
54+
(true, texture) => NodeGraphExecutionResult::HasRun(texture.map(Into::into)),
5555
(false, _) => NodeGraphExecutionResult::NotRun,
5656
}
5757
}

editor/src/messages/portfolio/document/node_graph/document_node_definitions.rs

Lines changed: 0 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1057,94 +1057,6 @@ fn document_node_definitions() -> HashMap<DefinitionIdentifier, DocumentNodeDefi
10571057
description: Cow::Borrowed("Loads an image from a given URL."),
10581058
properties: None,
10591059
},
1060-
#[cfg(all(feature = "gpu", target_family = "wasm"))]
1061-
DocumentNodeDefinition {
1062-
identifier: "Rasterize",
1063-
category: "Raster",
1064-
node_template: NodeTemplate {
1065-
document_node: DocumentNode {
1066-
implementation: DocumentNodeImplementation::Network(NodeNetwork {
1067-
exports: vec![NodeInput::node(NodeId(2), 0)],
1068-
nodes: [
1069-
DocumentNode {
1070-
inputs: vec![NodeInput::scope("editor-api")],
1071-
implementation: DocumentNodeImplementation::ProtoNode(wasm_application_io::create_surface::IDENTIFIER),
1072-
skip_deduplication: true,
1073-
..Default::default()
1074-
},
1075-
DocumentNode {
1076-
inputs: vec![NodeInput::node(NodeId(0), 0)],
1077-
implementation: DocumentNodeImplementation::ProtoNode(memo::memo::IDENTIFIER),
1078-
..Default::default()
1079-
},
1080-
DocumentNode {
1081-
inputs: vec![NodeInput::import(generic!(T), 0), NodeInput::import(concrete!(Footprint), 1), NodeInput::node(NodeId(1), 0)],
1082-
implementation: DocumentNodeImplementation::ProtoNode(wasm_application_io::rasterize::IDENTIFIER),
1083-
..Default::default()
1084-
},
1085-
]
1086-
.into_iter()
1087-
.enumerate()
1088-
.map(|(id, node)| (NodeId(id as u64), node))
1089-
.collect(),
1090-
..Default::default()
1091-
}),
1092-
inputs: vec![
1093-
NodeInput::value(TaggedValue::Vector(Default::default()), true),
1094-
NodeInput::value(
1095-
TaggedValue::Footprint(Footprint {
1096-
transform: DAffine2::from_scale_angle_translation(DVec2::new(1000., 1000.), 0., DVec2::new(0., 0.)),
1097-
resolution: UVec2::new(1000, 1000),
1098-
..Default::default()
1099-
}),
1100-
false,
1101-
),
1102-
],
1103-
..Default::default()
1104-
},
1105-
persistent_node_metadata: DocumentNodePersistentMetadata {
1106-
input_metadata: vec![("Artwork", "TODO").into(), ("Footprint", "TODO").into()],
1107-
output_names: vec!["Canvas".to_string()],
1108-
network_metadata: Some(NodeNetworkMetadata {
1109-
persistent_metadata: NodeNetworkPersistentMetadata {
1110-
node_metadata: [
1111-
DocumentNodeMetadata {
1112-
persistent_metadata: DocumentNodePersistentMetadata {
1113-
node_type_metadata: NodeTypePersistentMetadata::node(IVec2::new(0, 2)),
1114-
..Default::default()
1115-
},
1116-
..Default::default()
1117-
},
1118-
DocumentNodeMetadata {
1119-
persistent_metadata: DocumentNodePersistentMetadata {
1120-
node_type_metadata: NodeTypePersistentMetadata::node(IVec2::new(7, 2)),
1121-
..Default::default()
1122-
},
1123-
..Default::default()
1124-
},
1125-
DocumentNodeMetadata {
1126-
persistent_metadata: DocumentNodePersistentMetadata {
1127-
node_type_metadata: NodeTypePersistentMetadata::node(IVec2::new(14, 0)),
1128-
..Default::default()
1129-
},
1130-
..Default::default()
1131-
},
1132-
]
1133-
.into_iter()
1134-
.enumerate()
1135-
.map(|(id, node)| (NodeId(id as u64), node))
1136-
.collect(),
1137-
..Default::default()
1138-
},
1139-
..Default::default()
1140-
}),
1141-
..Default::default()
1142-
},
1143-
},
1144-
description: Cow::Borrowed("TODO"),
1145-
properties: None,
1146-
},
1147-
// TODO: Auto-generate this from its proto node macro
11481060
DocumentNodeDefinition {
11491061
identifier: "Noise Pattern",
11501062
category: "Raster: Pattern",

editor/src/node_graph_executor.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use graph_craft::proto::GraphErrors;
77
use graph_craft::wasm_application_io::EditorPreferences;
88
use graphene_std::application_io::{NodeGraphUpdateMessage, RenderConfig, TimingInformation};
99
use graphene_std::raster::{CPU, Raster};
10-
use graphene_std::renderer::{RenderMetadata, format_transform_matrix};
10+
use graphene_std::renderer::RenderMetadata;
1111
use graphene_std::text::FontCache;
1212
use graphene_std::transform::Footprint;
1313
use graphene_std::vector::Vector;
@@ -397,12 +397,11 @@ impl NodeGraphExecutor {
397397
responses.add(FrontendMessage::UpdateImageData { image_data });
398398
responses.add(FrontendMessage::UpdateDocumentArtwork { svg });
399399
}
400-
RenderOutputType::CanvasFrame(frame) => {
401-
let matrix = format_transform_matrix(frame.transform);
402-
let transform = if matrix.is_empty() { String::new() } else { format!(" transform=\"{matrix}\"") };
400+
#[cfg(target_family = "wasm")]
401+
RenderOutputType::CanvasFrame { canvas_id, resolution } => {
403402
let svg = format!(
404-
r#"<svg><foreignObject width="{}" height="{}"{transform}><div data-canvas-placeholder="{}" data-is-viewport="true"></div></foreignObject></svg>"#,
405-
frame.resolution.x, frame.resolution.y, frame.surface_id.0,
403+
r#"<svg><foreignObject width="{}" height="{}"><div data-canvas-placeholder="{}" data-is-viewport="true"></div></foreignObject></svg>"#,
404+
resolution.x, resolution.y, canvas_id,
406405
);
407406
responses.add(FrontendMessage::UpdateDocumentArtwork { svg });
408407
}

0 commit comments

Comments
 (0)