diff --git a/src/slic3r/GUI/MediaPlayCtrl.cpp b/src/slic3r/GUI/MediaPlayCtrl.cpp index b593d0c1b..74373cf31 100644 --- a/src/slic3r/GUI/MediaPlayCtrl.cpp +++ b/src/slic3r/GUI/MediaPlayCtrl.cpp @@ -59,13 +59,8 @@ MediaPlayCtrl::MediaPlayCtrl(wxWindow *parent, wxMediaCtrl2 *media_ctrl, const w // m_next_retry = wxDateTime::Now(); //#endif - auto onShowHide = [this](auto &e) { - e.Skip(); - if (m_isBeingDeleted) return; - IsShownOnScreen() ? Play() : Stop(); - }; - parent->Bind(wxEVT_SHOW, onShowHide); - parent->GetParent()->GetParent()->Bind(wxEVT_SHOW, onShowHide); + parent->Bind(wxEVT_SHOW, &MediaPlayCtrl::on_show_hide, this); + parent->GetParent()->GetParent()->Bind(wxEVT_SHOW, &MediaPlayCtrl::on_show_hide, this); m_lan_user = "bblp"; m_lan_passwd = "bblp"; @@ -387,6 +382,13 @@ void MediaPlayCtrl::SetStatus(wxString const &msg2, bool hyperlink) bool MediaPlayCtrl::IsStreaming() const { return m_streaming; } +void MediaPlayCtrl::on_show_hide(wxShowEvent &evt) +{ + evt.Skip(); + if (m_isBeingDeleted) return; + IsShownOnScreen() ? Play() : Stop(); +} + void MediaPlayCtrl::media_proc() { boost::unique_lock lock(m_mutex); diff --git a/src/slic3r/GUI/MediaPlayCtrl.h b/src/slic3r/GUI/MediaPlayCtrl.h index 4c8c1d010..36ca3175e 100644 --- a/src/slic3r/GUI/MediaPlayCtrl.h +++ b/src/slic3r/GUI/MediaPlayCtrl.h @@ -51,6 +51,8 @@ protected: void SetStatus(wxString const &msg, bool hyperlink = true); private: + void on_show_hide(wxShowEvent & evt); + void media_proc(); bool get_stream_url(std::string * url = nullptr); diff --git a/src/slic3r/GUI/StatusPanel.cpp b/src/slic3r/GUI/StatusPanel.cpp index 502827e9f..f056d0cb7 100644 --- a/src/slic3r/GUI/StatusPanel.cpp +++ b/src/slic3r/GUI/StatusPanel.cpp @@ -158,7 +158,10 @@ StatusBasePanel::StatusBasePanel(wxWindow *parent, wxWindowID id, const wxPoint this->Layout(); } -StatusBasePanel::~StatusBasePanel() { delete m_media_play_ctrl; } +StatusBasePanel::~StatusBasePanel() +{ + delete m_media_play_ctrl; +} void StatusBasePanel::init_bitmaps() {