mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-23 08:18:12 +08:00
Add support for persistent storage of panel layouts, sizes, and active tabs (#4017)
* Add persistence to panel layouts * Fix and persist the Window > Focus Document mode * Add a Window > Reset Workspace action * workspace_layout.json -> workspace_layout.ron * Fix native app hole punch * Cleanup review pass
This commit is contained in:
@@ -75,6 +75,15 @@ pub(super) fn handle_desktop_wrapper_message(dispatcher: &mut DesktopWrapperMess
|
||||
let message = PreferencesMessage::Load { preferences };
|
||||
dispatcher.queue_editor_message(message);
|
||||
}
|
||||
DesktopWrapperMessage::LoadWorkspaceLayout { workspace_layout } => match ron::from_str(&workspace_layout) {
|
||||
Ok(layout) => {
|
||||
let message = PortfolioMessage::LoadWorkspaceLayout { layout };
|
||||
dispatcher.queue_editor_message(message);
|
||||
}
|
||||
Err(e) => {
|
||||
tracing::error!("Failed to deserialize workspace layout: {e}");
|
||||
}
|
||||
},
|
||||
#[cfg(target_os = "macos")]
|
||||
DesktopWrapperMessage::MenuEvent { id } => {
|
||||
if let Some(message) = crate::utils::menu::parse_item_path(id) {
|
||||
|
||||
Reference in New Issue
Block a user