diff --git a/src/driver/record.cpp b/src/driver/record.cpp index 672a5ef3a..fc475f8b6 100644 --- a/src/driver/record.cpp +++ b/src/driver/record.cpp @@ -1379,8 +1379,14 @@ void CRecordManager::StartTimeshift() if(res) { CMoviePlayerGui::getInstance().exec(NULL, tmode); +#if 0 + /* + ShowMenu() moved to movieplayer.cpp + Function is called when stop key is pressed. + */ if(g_settings.temp_timeshift && tstarted && autoshift) ShowMenu(); +#endif } } } diff --git a/src/gui/movieplayer.cpp b/src/gui/movieplayer.cpp index 05320e709..20a479e79 100644 --- a/src/gui/movieplayer.cpp +++ b/src/gui/movieplayer.cpp @@ -1629,9 +1629,17 @@ void CMoviePlayerGui::PlayFileLoop(void) } else if ((msg == (neutrino_msg_t) g_settings.mpkey_stop) || msg == CRCInput::RC_home) { #endif } else if (msg == (neutrino_msg_t) g_settings.mpkey_stop) { - playstate = CMoviePlayerGui::STOPPED; - keyPressed = CMoviePlayerGui::PLUGIN_PLAYSTATE_STOP; - ClearQueue(); + bool timeshift_stopped = false; + + if (timeshift != TSHIFT_MODE_OFF) + timeshift_stopped = CRecordManager::getInstance()->ShowMenu(); + + if (timeshift == TSHIFT_MODE_OFF || timeshift_stopped) + { + playstate = CMoviePlayerGui::STOPPED; + keyPressed = CMoviePlayerGui::PLUGIN_PLAYSTATE_STOP; + ClearQueue(); + } } else if (msg == CRCInput::RC_left || msg == CRCInput::RC_right) { bool reset_vzap_it = true; switch (g_settings.mode_left_right_key_tv)