FIX: The status of cali is not correct when switch printer

Jira: STUDIO-4782
Change-Id: I9894e4c84bf30f1fbb3b833f5ed4f40c9cb01be7
This commit is contained in:
zhimin.zeng
2023-10-24 14:39:55 +08:00
committed by Lane.Wei
parent 82684b1d20
commit 5503c59c1e
4 changed files with 9 additions and 7 deletions

View File

@@ -973,7 +973,7 @@ void AppConfig::set_vendors(const AppConfig &from)
m_dirty = true;
}
void AppConfig::save_printer_cali_infos(const PrinterCaliInfo &cali_info)
void AppConfig::save_printer_cali_infos(const PrinterCaliInfo &cali_info, bool need_change_status)
{
auto iter = std::find_if(m_printer_cali_infos.begin(), m_printer_cali_infos.end(), [&cali_info](const PrinterCaliInfo &cali_info_item) {
return cali_info_item.dev_id == cali_info.dev_id;
@@ -982,7 +982,9 @@ void AppConfig::save_printer_cali_infos(const PrinterCaliInfo &cali_info)
if (iter == m_printer_cali_infos.end()) {
m_printer_cali_infos.emplace_back(cali_info);
} else {
(*iter).cali_finished = cali_info.cali_finished;
if (need_change_status) {
(*iter).cali_finished = cali_info.cali_finished;
}
(*iter).cache_flow_ratio = cali_info.cache_flow_ratio;
(*iter).selected_presets = cali_info.selected_presets;
}