summaryrefslogtreecommitdiffstats
path: root/player/core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2017-04-14 18:56:03 +0200
committerwm4 <wm4@nowhere>2017-04-14 18:58:48 +0200
commitb586bc2dbec6495e65ef1a34045f6d66a7112d9d (patch)
tree1696ea19a63d34516b3a9538659094119c51be63 /player/core.h
parent419624fb068ed4e7f449fa4fd0dda8edf161ac1c (diff)
downloadmpv-b586bc2dbec6495e65ef1a34045f6d66a7112d9d.tar.bz2
mpv-b586bc2dbec6495e65ef1a34045f6d66a7112d9d.tar.xz
player: fix core-idle and eof-reached update notifcations
Make mpv_observe_property() work correctly on them even with --keep-open-pause=no. This also changes the situations in which the screensaver is enabled/disabled subtly.
Diffstat (limited to 'player/core.h')
-rw-r--r--player/core.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/player/core.h b/player/core.h
index 1e1c7f0baa..b9fa706f7d 100644
--- a/player/core.h
+++ b/player/core.h
@@ -415,7 +415,9 @@ typedef struct MPContext {
int last_chapter_seek;
double last_chapter_pts;
- bool paused;
+ bool paused; // internal pause state
+ bool playback_active; // not paused, restarting, loading, unloading
+
// step this many frames, then pause
int step_frames;
// Counted down each frame, stop playback if 0 is reached. (-1 = disable)
@@ -560,6 +562,7 @@ double get_relative_time(struct MPContext *mpctx);
void reset_playback_state(struct MPContext *mpctx);
void set_pause_state(struct MPContext *mpctx, bool user_pause);
void update_internal_pause_state(struct MPContext *mpctx);
+void update_core_idle_state(struct MPContext *mpctx);
void add_step_frame(struct MPContext *mpctx, int dir);
void queue_seek(struct MPContext *mpctx, enum seek_type type, double amount,
enum seek_precision exact, int flags);