FIX: show ip/code dialog no-delay on user triggered failure

Change-Id: If9f469f3379de972a51bf581d41c379e8f982bb9
This commit is contained in:
chunmao.guo 2023-01-28 11:19:30 +08:00 committed by Lane.Wei
parent afb8f47111
commit 4b8f197e1d
2 changed files with 5 additions and 1 deletions

View file

@ -237,14 +237,16 @@ void MediaPlayCtrl::Stop(wxString const &msg)
SetStatus(msg, false);
}
++m_failed_retry;
if (m_failed_code != 0 && !m_tutk_support && m_failed_retry > 1) {
if (m_failed_code != 0 && !m_tutk_support && (m_failed_retry > 1 || m_user_triggered)) {
m_next_retry = wxDateTime(); // stop retry
if (wxGetApp().show_modal_ip_address_enter_dialog(_L("LAN Connection Failed (Failed to start liveview)"))) {
m_failed_retry = 0;
m_user_triggered = true;
m_next_retry = wxDateTime::Now();
return;
}
}
m_user_triggered = false;
if (m_next_retry.IsValid())
m_next_retry = wxDateTime::Now() + wxTimeSpan::Seconds(5 * m_failed_retry);
}
@ -256,6 +258,7 @@ void MediaPlayCtrl::TogglePlay()
Stop();
} else {
m_failed_retry = 0;
m_user_triggered = true;
m_next_retry = wxDateTime::Now();
Play();
}

View file

@ -83,6 +83,7 @@ private:
boost::thread m_thread;
bool m_streaming = false;
bool m_user_triggered = false;
int m_failed_retry = 0;
int m_failed_code = 0;
wxDateTime m_next_retry;