From db2561eb9fa612b84d54eba0ff9f9b308e89ee84 Mon Sep 17 00:00:00 2001 From: TrueDoctor Date: Wed, 23 Jun 2021 11:20:59 +0200 Subject: [PATCH] Simplify document selection by reusing code (#226) --- .../src/document/document_message_handler.rs | 35 ++++--------------- 1 file changed, 6 insertions(+), 29 deletions(-) diff --git a/core/editor/src/document/document_message_handler.rs b/core/editor/src/document/document_message_handler.rs index 8247434bd..81b642053 100644 --- a/core/editor/src/document/document_message_handler.rs +++ b/core/editor/src/document/document_message_handler.rs @@ -92,12 +92,7 @@ impl MessageHandler for DocumentMessageHandler { assert!(id < self.documents.len(), "Tried to select a document that was not initialized"); self.active_document = id; responses.push_back(FrontendMessage::SetActiveDocument { document_index: self.active_document }.into()); - responses.push_back( - FrontendMessage::UpdateCanvas { - document: self.active_document_mut().document.render_root(), - } - .into(), - ); + responses.push_back(RenderDocument.into()); } CloseActiveDocument => { responses.push_back(FrontendMessage::PromptCloseConfirmationModal.into()); @@ -180,33 +175,15 @@ impl MessageHandler for DocumentMessageHandler { } .into(), ); - responses.push_back(FrontendMessage::SetActiveDocument { document_index: self.active_document }.into()); - responses.push_back( - FrontendMessage::UpdateCanvas { - document: self.active_document_mut().document.render_root(), - } - .into(), - ); + responses.push_back(SelectDocument(self.active_document).into()); } NextDocument => { - self.active_document = (self.active_document + 1) % self.documents.len(); - responses.push_back(FrontendMessage::SetActiveDocument { document_index: self.active_document }.into()); - responses.push_back( - FrontendMessage::UpdateCanvas { - document: self.active_document_mut().document.render_root(), - } - .into(), - ); + let id = (self.active_document + 1) % self.documents.len(); + responses.push_back(SelectDocument(id).into()); } PrevDocument => { - self.active_document = (self.active_document + self.documents.len() - 1) % self.documents.len(); - responses.push_back(FrontendMessage::SetActiveDocument { document_index: self.active_document }.into()); - responses.push_back( - FrontendMessage::UpdateCanvas { - document: self.active_document_mut().document.render_root(), - } - .into(), - ); + let id = (self.active_document + self.documents.len() - 1) % self.documents.len(); + responses.push_back(SelectDocument(id).into()); } ExportDocument => responses.push_back( FrontendMessage::ExportDocument {