mirror of
https://github.com/mpv-player/mpv
synced 2025-03-25 04:38:01 +00:00
osd: always display pause icon when frame stepping
When the OSD was enabled and the player was paused by executing the frame_step command, the OSD still displayed the icon indicating playback. Fix this and always set the proper icon when the pause state is changed.
This commit is contained in:
parent
245773e569
commit
b51e1d427e
@ -680,10 +680,8 @@ static int mp_property_pause(m_option_t *prop, int action, void *arg,
|
|||||||
case M_PROPERTY_STEP_DOWN:
|
case M_PROPERTY_STEP_DOWN:
|
||||||
if (mpctx->paused) {
|
if (mpctx->paused) {
|
||||||
unpause_player(mpctx);
|
unpause_player(mpctx);
|
||||||
mpctx->osd_function = OSD_PLAY;
|
|
||||||
} else {
|
} else {
|
||||||
pause_player(mpctx);
|
pause_player(mpctx);
|
||||||
mpctx->osd_function = OSD_PAUSE;
|
|
||||||
}
|
}
|
||||||
return M_PROPERTY_OK;
|
return M_PROPERTY_OK;
|
||||||
default:
|
default:
|
||||||
|
@ -2977,6 +2977,7 @@ void pause_player(struct MPContext *mpctx)
|
|||||||
mpctx->paused = 1;
|
mpctx->paused = 1;
|
||||||
mpctx->step_frames = 0;
|
mpctx->step_frames = 0;
|
||||||
mpctx->time_frame -= get_relative_time(mpctx);
|
mpctx->time_frame -= get_relative_time(mpctx);
|
||||||
|
mpctx->osd_function = OSD_PAUSE;
|
||||||
|
|
||||||
if (mpctx->video_out && mpctx->sh_video && mpctx->video_out->config_ok)
|
if (mpctx->video_out && mpctx->sh_video && mpctx->video_out->config_ok)
|
||||||
vo_control(mpctx->video_out, VOCTRL_PAUSE, NULL);
|
vo_control(mpctx->video_out, VOCTRL_PAUSE, NULL);
|
||||||
@ -2990,6 +2991,8 @@ void unpause_player(struct MPContext *mpctx)
|
|||||||
if (!mpctx->paused)
|
if (!mpctx->paused)
|
||||||
return;
|
return;
|
||||||
mpctx->paused = 0;
|
mpctx->paused = 0;
|
||||||
|
if (!mpctx->step_frames)
|
||||||
|
mpctx->osd_function = OSD_PLAY;
|
||||||
|
|
||||||
if (mpctx->ao && mpctx->sh_audio)
|
if (mpctx->ao && mpctx->sh_audio)
|
||||||
ao_resume(mpctx->ao);
|
ao_resume(mpctx->ao);
|
||||||
|
Loading…
Reference in New Issue
Block a user