diff --git a/desktop/wrapper/src/intercept_frontend_message.rs b/desktop/wrapper/src/intercept_frontend_message.rs index 0d7a009963..22a9cca836 100644 --- a/desktop/wrapper/src/intercept_frontend_message.rs +++ b/desktop/wrapper/src/intercept_frontend_message.rs @@ -81,7 +81,7 @@ pub(super) fn intercept_frontend_message(dispatcher: &mut DesktopWrapperMessageD id: document_id, document: Document { name: details.name, - path: None, + path: details.path, content: document, is_saved: details.is_saved, }, diff --git a/editor/src/messages/frontend/utility_types.rs b/editor/src/messages/frontend/utility_types.rs index 7f9873403b..89dc539c53 100644 --- a/editor/src/messages/frontend/utility_types.rs +++ b/editor/src/messages/frontend/utility_types.rs @@ -1,3 +1,5 @@ +use std::path::PathBuf; + use crate::messages::portfolio::document::utility_types::document_metadata::LayerNodeIdentifier; use crate::messages::prelude::*; @@ -10,6 +12,7 @@ pub struct OpenDocument { #[derive(PartialEq, Eq, Clone, Debug, serde::Serialize, serde::Deserialize, specta::Type)] pub struct DocumentDetails { pub name: String, + pub path: Option, #[serde(rename = "isSaved")] pub is_saved: bool, #[serde(rename = "isAutoSaved")] diff --git a/editor/src/messages/portfolio/document/document_message_handler.rs b/editor/src/messages/portfolio/document/document_message_handler.rs index c25c6f5adb..ea1efc0a0c 100644 --- a/editor/src/messages/portfolio/document/document_message_handler.rs +++ b/editor/src/messages/portfolio/document/document_message_handler.rs @@ -1047,6 +1047,8 @@ impl MessageHandler> for DocumentMes DocumentMessage::SavedDocument { path } => { self.path = path; + responses.add(PortfolioMessage::AutoSaveActiveDocument); + // Update the name to match the file stem let document_name_from_path = self.path.as_ref().and_then(|path| { if path.extension().is_some_and(|e| e == FILE_EXTENSION) { diff --git a/editor/src/messages/portfolio/portfolio_message_handler.rs b/editor/src/messages/portfolio/portfolio_message_handler.rs index cb852eb3bc..7dc0334c3f 100644 --- a/editor/src/messages/portfolio/portfolio_message_handler.rs +++ b/editor/src/messages/portfolio/portfolio_message_handler.rs @@ -194,6 +194,7 @@ impl MessageHandler> for Portfolio document: document.serialize_document(), details: DocumentDetails { name: document.name.clone(), + path: document.path.clone(), is_saved: document.is_saved(), is_auto_saved: document.is_auto_saved(), }, @@ -1052,9 +1053,10 @@ impl MessageHandler> for Portfolio self.documents.get(id).map(|document| OpenDocument { id: *id, details: DocumentDetails { - is_auto_saved: document.is_auto_saved(), - is_saved: document.is_saved(), name: document.name.clone(), + path: document.path.clone(), + is_saved: document.is_saved(), + is_auto_saved: document.is_auto_saved(), }, }) })