From 415c4ede8af3ab32b94582133259241a30b786e4 Mon Sep 17 00:00:00 2001 From: "chunmao.guo" Date: Mon, 12 Jun 2023 15:54:09 +0800 Subject: [PATCH] FIX: avoid multiple unsaved dialog \(2\) Change-Id: Ia41ede7c78d6218691694b3d3c8d05f2275bb014 --- src/slic3r/GUI/GUI_App.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index 9d606261c..b994418b0 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -3715,15 +3715,16 @@ void GUI_App::request_user_login(int online_login) void GUI_App::request_user_logout() { if (m_agent && m_agent->is_user_login()) { + // Update data first before showing dialogs + m_agent->user_logout(); + m_agent->set_user_selected_machine(""); + /* delete old user settings */ bool transfer_preset_changes = false; wxString header = _L("Some presets are modified.") + "\n" + _L("You can keep the modifield presets to the new project, discard or save changes as new presets."); using ab = UnsavedChangesDialog::ActionButtons; wxGetApp().check_and_keep_current_preset_changes(_L("User logged out"), header, ab::KEEP | ab::SAVE, &transfer_preset_changes); - m_agent->user_logout(); - m_agent->set_user_selected_machine(""); - /* delete old user settings */ m_device_manager->clean_user_info(); GUI::wxGetApp().sidebar().load_ams_list({}, {}); remove_user_presets();