mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-20 03:43:52 +00:00
Fix a regression where the login panel is displayed even when the plugin is disabled (#12185)
Update GUI_App to show or hide the login panel based on the "installed_networking" setting.
This commit is contained in:
@@ -499,6 +499,10 @@ void AppConfig::set_defaults()
|
|||||||
set_bool("is_split_compound", false);
|
set_bool("is_split_compound", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(get("installed_networking").empty()) {
|
||||||
|
set_bool("installed_networking", false);
|
||||||
|
}
|
||||||
|
|
||||||
// Remove legacy window positions/sizes
|
// Remove legacy window positions/sizes
|
||||||
erase("app", "main_frame_maximized");
|
erase("app", "main_frame_maximized");
|
||||||
erase("app", "main_frame_pos");
|
erase("app", "main_frame_pos");
|
||||||
|
|||||||
@@ -4439,7 +4439,11 @@ void GUI_App::get_login_info()
|
|||||||
GUI::wxGetApp().run_script(strJS);
|
GUI::wxGetApp().run_script(strJS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(app_config->get_bool("installed_networking")) {
|
||||||
mainframe->m_webview->SetLoginPanelVisibility(true);
|
mainframe->m_webview->SetLoginPanelVisibility(true);
|
||||||
|
} else {
|
||||||
|
mainframe->m_webview->SetLoginPanelVisibility(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -487,24 +487,24 @@ void WebViewPanel::SendLoginInfo()
|
|||||||
|
|
||||||
void WebViewPanel::ShowNetpluginTip()
|
void WebViewPanel::ShowNetpluginTip()
|
||||||
{
|
{
|
||||||
|
// Install Network Plugin
|
||||||
const auto bblnetwork_enabled =wxGetApp().app_config->get_bool("installed_networking");
|
const auto bblnetwork_enabled =wxGetApp().app_config->get_bool("installed_networking");
|
||||||
|
if(!bblnetwork_enabled) {
|
||||||
// Show tip if: plugin is enabled but incompatible, OR BBL printer selected but plugin not loaded
|
return;
|
||||||
bool need_show = false;
|
|
||||||
if (bblnetwork_enabled) {
|
|
||||||
need_show = !wxGetApp().is_compatibility_version();
|
|
||||||
} else if (wxGetApp().preset_bundle && wxGetApp().preset_bundle->is_bbl_vendor()) {
|
|
||||||
need_show = true;
|
|
||||||
}
|
}
|
||||||
|
bool bValid = wxGetApp().is_compatibility_version();
|
||||||
|
|
||||||
BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format(": need_show=%1%") % need_show;
|
int nShow = 0;
|
||||||
|
if (!bValid) nShow = 1;
|
||||||
|
|
||||||
json res = json::object();
|
BOOST_LOG_TRIVIAL(info) << __FUNCTION__<< boost::format(": bValid=%1%, nShow=%2%")%bValid %nShow;
|
||||||
res["command"] = "network_plugin_installtip";
|
|
||||||
res["sequence_id"] = "10001";
|
|
||||||
res["show"] = need_show ? 1 : 0;
|
|
||||||
|
|
||||||
wxString strJS = wxString::Format("window.postMessage(%s)", res.dump(-1, ' ', false, json::error_handler_t::ignore));
|
json m_Res = json::object();
|
||||||
|
m_Res["command"] = "network_plugin_installtip";
|
||||||
|
m_Res["sequence_id"] = "10001";
|
||||||
|
m_Res["show"] = nShow;
|
||||||
|
|
||||||
|
wxString strJS = wxString::Format("window.postMessage(%s)", m_Res.dump(-1, ' ', false, json::error_handler_t::ignore));
|
||||||
|
|
||||||
RunScript(strJS);
|
RunScript(strJS);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user