Allow the user to force clear any stuck overlays (#922)

Force clear overlays

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
0HyperCube 2022-12-28 20:19:50 +00:00 committed by Keavon Chambers
parent b408bef14b
commit 3bce11edb5
3 changed files with 6 additions and 1 deletions

View File

@ -757,6 +757,8 @@ impl MessageHandler<DocumentMessage, (u64, &InputPreprocessorMessageHandler, &Pe
} }
SetOverlaysVisibility { visible } => { SetOverlaysVisibility { visible } => {
self.overlays_visible = visible; self.overlays_visible = visible;
responses.push_back(BroadcastEvent::ToolAbort.into());
responses.push_back(OverlaysMessage::ClearAllOverlays.into());
responses.push_back(OverlaysMessage::Rerender.into()); responses.push_back(OverlaysMessage::Rerender.into());
} }
SetSelectedLayers { replacement_selected_layers } => { SetSelectedLayers { replacement_selected_layers } => {

View File

@ -24,7 +24,9 @@ impl MessageHandler<OverlaysMessage, (bool, &FontCache, &InputPreprocessorMessag
}, },
// Messages // Messages
ClearAllOverlays => todo!(), ClearAllOverlays => {
self.overlays_document = DocumentLegacy::default();
}
Rerender => Rerender =>
// Render overlays // Render overlays
{ {

View File

@ -506,6 +506,7 @@ impl MessageHandler<PortfolioMessage, (&InputPreprocessorMessageHandler, &Prefer
if self.active_document().is_some() { if self.active_document().is_some() {
responses.push_back(BroadcastEvent::ToolAbort.into()); responses.push_back(BroadcastEvent::ToolAbort.into());
responses.push_back(OverlaysMessage::ClearAllOverlays.into());
} }
// TODO: Remove this message in favor of having tools have specific data per document instance // TODO: Remove this message in favor of having tools have specific data per document instance