summaryrefslogtreecommitdiffstats
path: root/core/mp_core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-11-20 17:20:45 +0100
committerwm4 <wm4@nowhere>2012-11-20 18:00:16 +0100
commit2cdbaaf31c85b27923c1795b5c4e3e576cdb4567 (patch)
tree8df97f6cfd4b3b6197cefc6338118f4bfe35dfb3 /core/mp_core.h
parent0e63702ef830f123d735cbbb436e3e805ad0b2d0 (diff)
downloadmpv-2cdbaaf31c85b27923c1795b5c4e3e576cdb4567.tar.bz2
mpv-2cdbaaf31c85b27923c1795b5c4e3e576cdb4567.tar.xz
osd: fix OSD status symbol display in some cases
The playback status symbol in the OSD status display on video (such as displayed when seeking or with the show_progress input command) sometimes kept displaying the last seek, without resetting the symbol. (For example: disable the OSD, seek, enable the OSD, run show_progress; but also other cases.) The main reason for that was the code clearing the OSD bar is also responsible for clearing the osd_function (which stores the playback symbol). If no OSD bar was set, the osd_function was never reset. Fix by always setting the timer for clearing the OSD bar and the osd_function whenever the osd_function is set. Clearing the OSD bar when it wasn't set is OK. If the OSD bar is set some time after osd_function is set, the timer is overwritten - that's a good thing, as it makes both disappear from the screen at exactly the same time. Always reset osd_function to 0 and determine the playback status explicitly from mpctx->paused when displaying the status on screen.
Diffstat (limited to 'core/mp_core.h')
-rw-r--r--core/mp_core.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/mp_core.h b/core/mp_core.h
index 0439ca13f5..dac4dd26d0 100644
--- a/core/mp_core.h
+++ b/core/mp_core.h
@@ -137,8 +137,8 @@ typedef struct MPContext {
int add_osd_seek_info; // bitfield of enum mp_osd_seek_info
unsigned int osd_visible;
-
int osd_function;
+
struct playlist *playlist;
char *filename; // currently playing file
struct mp_resolve_result *resolve_result;