From e17a8550c408e3ecbe8b1d33dbab694eabe2c713 Mon Sep 17 00:00:00 2001 From: rrooij Date: Mon, 18 May 2015 22:56:56 +0200 Subject: input: add relative percentage seek Only absolute percentage seeking was permitted first. It is now also possible to seek by relative percentage. MPSEEK_FACTOR is used as seek_type. Fixes #1950. Signed-off-by: wm4 --- player/command.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'player/command.c') diff --git a/player/command.c b/player/command.c index c03e63d254..54fc79fede 100644 --- a/player/command.c +++ b/player/command.c @@ -4118,6 +4118,11 @@ int run_command(struct MPContext *mpctx, struct mp_cmd *cmd, struct mpv_node *re queue_seek(mpctx, MPSEEK_ABSOLUTE, v, precision, false); set_osd_function(mpctx, v > get_current_time(mpctx) ? OSD_FFW : OSD_REW); + } else if (abs == 3) { // Relative seeking by percentage + queue_seek(mpctx, MPSEEK_FACTOR, + get_current_pos_ratio(mpctx, false) + v / 100.0, + precision, false); + set_osd_function(mpctx, v > 0 ? OSD_FFW : OSD_REW); } else if (abs) { /* Absolute seek by percentage */ queue_seek(mpctx, MPSEEK_FACTOR, v / 100.0, precision, false); set_osd_function(mpctx, OSD_FFW); // Direction isn't set correctly -- cgit v1.2.3