diff --git a/src/slic3r/GUI/ConfigWizardWebViewPage.cpp b/src/slic3r/GUI/ConfigWizardWebViewPage.cpp index d05a1e5193..87e7f6ccbe 100644 --- a/src/slic3r/GUI/ConfigWizardWebViewPage.cpp +++ b/src/slic3r/GUI/ConfigWizardWebViewPage.cpp @@ -92,7 +92,8 @@ case type: \ void ConfigWizardWebViewPage::load_error_page() { if (!m_browser) return; - + if (m_vetoed) + return; m_browser->Stop(); m_load_error_page = true; } @@ -105,7 +106,7 @@ void ConfigWizardWebViewPage::on_idle(wxIdleEvent &WXUNUSED(evt)) { } else { wxSetCursor(wxNullCursor); - if (m_load_error_page) { + if (!m_vetoed && m_load_error_page) { m_load_error_page = false; m_browser->LoadURL(GUI::format_wxstr( "file://%1%/web/connection_failed.html", @@ -121,6 +122,7 @@ void ConfigWizardWebViewPage::on_navigation_request(wxWebViewEvent &evt) wxString url = evt.GetURL(); if (url.starts_with(L"prusaslicer")) { evt.Veto(); + m_vetoed = true; wxPostEvent(wxGetApp().plater(), Event(EVT_LOGIN_VIA_WIZARD, into_u8(url))); } } diff --git a/src/slic3r/GUI/ConfigWizardWebViewPage.hpp b/src/slic3r/GUI/ConfigWizardWebViewPage.hpp index 23097a534b..8ad6638063 100644 --- a/src/slic3r/GUI/ConfigWizardWebViewPage.hpp +++ b/src/slic3r/GUI/ConfigWizardWebViewPage.hpp @@ -60,6 +60,7 @@ private: wxBoxSizer *m_browser_sizer{nullptr}; wxStaticText *m_text{nullptr}; bool m_load_error_page{false}; + bool m_vetoed{false}; }; }} // namespace Slic3r::GUI