diff --git a/src/slic3r/GUI/WebGuideDialog.cpp b/src/slic3r/GUI/WebGuideDialog.cpp index 05de4938ea..65a57cce41 100644 --- a/src/slic3r/GUI/WebGuideDialog.cpp +++ b/src/slic3r/GUI/WebGuideDialog.cpp @@ -111,7 +111,7 @@ void GuideFrame::load_url(wxString &url) { BOOST_LOG_TRIVIAL(trace) << "app_start: GuideFrame url=" << url.ToStdString(); this->Show(); - m_browser->LoadURL(url); + WebView::LoadUrl(m_browser, url); m_browser->SetFocus(); UpdateState(); } diff --git a/src/slic3r/GUI/Widgets/WebView.cpp b/src/slic3r/GUI/Widgets/WebView.cpp index 31378b7139..6bd59c27e5 100644 --- a/src/slic3r/GUI/Widgets/WebView.cpp +++ b/src/slic3r/GUI/Widgets/WebView.cpp @@ -98,6 +98,16 @@ wxWebView* WebView::CreateWebView(wxWindow * parent, wxString const & url) return webView; } +void WebView::LoadUrl(wxWebView * webView, wxString const &url) +{ + auto url2 = url; +#ifdef __WIN32__ + url2.Replace("\\", "/"); +#endif + if (!url2.empty()) { url2 = wxURI(url2).BuildURI(); } + webView->LoadURL(url2); +} + bool WebView::RunScript(wxWebView *webView, wxString const &javascript) { if (Slic3r::GUI::wxGetApp().get_mode() == Slic3r::comDevelop) diff --git a/src/slic3r/GUI/Widgets/WebView.hpp b/src/slic3r/GUI/Widgets/WebView.hpp index 9ca12ccf68..ce142913f0 100644 --- a/src/slic3r/GUI/Widgets/WebView.hpp +++ b/src/slic3r/GUI/Widgets/WebView.hpp @@ -7,6 +7,8 @@ class WebView { public: static wxWebView *CreateWebView(wxWindow *parent, wxString const &url); + + static void LoadUrl(wxWebView * webView, wxString const &url); static bool RunScript(wxWebView * webView, wxString const & msg); };