FIX:gui crash:call dialog in CallAfter

jira: none
Change-Id: I46492c2c6da2e909019162af20b8cf80eb1cc301
(cherry picked from commit 6ee19c9b34517fc865f604c9fd96238a52d3b3bc)
This commit is contained in:
zhou.xu
2025-09-17 10:40:20 +08:00
committed by Noisyfox
parent 55b928694c
commit fbafa7f23a
+7 -4
View File
@@ -3031,7 +3031,7 @@ void Sidebar::sync_ams_list(bool is_from_big_sync_btn)
}
Layout();
wxTheApp->CallAfter([this]() {pop_finsish_sync_ams_dialog(); });
pop_finsish_sync_ams_dialog();
}
void Sidebar::show_SEMM_buttons(bool bshow)
@@ -3140,6 +3140,7 @@ void Sidebar::deal_btn_sync() {
}
void Sidebar::pop_sync_nozzle_and_ams_dialog() {
wxTheApp->CallAfter([this]() {
SyncNozzleAndAmsDialog::InputInfo temp_na_info;
wxPoint big_btn_pt;
wxSize big_btn_size;
@@ -3156,18 +3157,18 @@ void Sidebar::pop_sync_nozzle_and_ams_dialog() {
temp_na_info.ams_btn_pos = small_btn_pt + wxPoint(small_btn_size.x / 2, small_btn_size.y / 2);
if (m_sna_dialog) {
if (m_fna_dialog) {
m_fna_dialog->on_hide();
}
if (m_fna_dialog) { m_fna_dialog->on_hide(); }
m_sna_dialog->update_info(temp_na_info);
} else {
m_sna_dialog = std::make_shared<SyncNozzleAndAmsDialog>(temp_na_info);
}
m_sna_dialog->on_show();
});
}
void Sidebar::pop_finsish_sync_ams_dialog()
{
wxTheApp->CallAfter([this]() {
wxPoint small_btn_pt;
wxSize small_btn_size;
get_small_btn_sync_pos_size(small_btn_pt, small_btn_size);
@@ -3184,6 +3185,8 @@ void Sidebar::pop_finsish_sync_ams_dialog()
m_fna_dialog = std::make_shared<FinishSyncAmsDialog>(temp_fsa_info);
}
m_fna_dialog->on_show();
});
}
static std::vector<Search::InputInfo> get_search_inputs(ConfigOptionMode mode)