Skip to content

Commit 2483832

Browse files
timon-schellingKeavon
authored andcommitted
Mark new documents as saved (#3165)
* clean up new document message handling * Mark new documents as saved
1 parent 5836416 commit 2483832

4 files changed

Lines changed: 13 additions & 8 deletions

File tree

editor/src/messages/dialog/new_document_dialog/new_document_dialog_message_handler.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ impl<'a> MessageHandler<NewDocumentDialogMessage, NewDocumentDialogMessageContex
4545
messages: vec![DocumentMessage::ZoomCanvasToFitAll.into(), DocumentMessage::DeselectAllLayers.into()],
4646
});
4747
}
48+
49+
responses.add(DocumentMessage::MarkAsSaved);
4850
}
4951
}
5052

editor/src/messages/portfolio/document/document_message.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ pub enum DocumentMessage {
122122
SavedDocument {
123123
path: Option<PathBuf>,
124124
},
125+
MarkAsSaved,
125126
SelectParentLayer,
126127
SelectAllLayers,
127128
SelectedLayersLower,

editor/src/messages/portfolio/document/document_message_handler.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1062,6 +1062,10 @@ impl MessageHandler<DocumentMessage, DocumentMessageContext<'_>> for DocumentMes
10621062
responses.add(NodeGraphMessage::UpdateNewNodeGraph);
10631063
}
10641064
}
1065+
DocumentMessage::MarkAsSaved => {
1066+
self.set_save_state(true);
1067+
responses.add(PortfolioMessage::UpdateOpenDocumentsList);
1068+
}
10651069
DocumentMessage::SelectParentLayer => {
10661070
let selected_nodes = self.network_interface.selected_nodes();
10671071
let selected_layers = selected_nodes.selected_layers(self.metadata());

editor/src/messages/portfolio/portfolio_message_handler.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -390,19 +390,17 @@ impl MessageHandler<PortfolioMessage, PortfolioMessageContext<'_>> for Portfolio
390390
PortfolioMessage::NewDocumentWithName { name } => {
391391
let mut new_document = DocumentMessageHandler::default();
392392
new_document.name = name;
393-
let mut new_responses = VecDeque::new();
394-
new_responses.add(DocumentMessage::PTZUpdate);
393+
394+
responses.add(DocumentMessage::PTZUpdate);
395395

396396
let document_id = DocumentId(generate_uuid());
397397
if self.active_document().is_some() {
398-
new_responses.add(EventMessage::ToolAbort);
399-
new_responses.add(NavigationMessage::CanvasPan { delta: (0., 0.).into() });
398+
responses.add(EventMessage::ToolAbort);
399+
responses.add(NavigationMessage::CanvasPan { delta: (0., 0.).into() });
400400
}
401401

402-
self.load_document(new_document, document_id, self.layers_panel_open, &mut new_responses, false);
403-
new_responses.add(PortfolioMessage::SelectDocument { document_id });
404-
new_responses.extend(responses.drain(..));
405-
*responses = new_responses;
402+
self.load_document(new_document, document_id, self.layers_panel_open, responses, false);
403+
responses.add(PortfolioMessage::SelectDocument { document_id });
406404
}
407405
PortfolioMessage::NextDocument => {
408406
if let Some(active_document_id) = self.active_document_id {

0 commit comments

Comments
 (0)