diff --git a/host/mprisplugin.cpp b/host/mprisplugin.cpp --- a/host/mprisplugin.cpp +++ b/host/mprisplugin.cpp @@ -551,7 +551,16 @@ void MPrisPlugin::Seek(qlonglong offset) { - Q_UNUSED(offset); + auto newPosition = position() + offset; + if (newPosition > m_length) { + Next(); + return; + } + + if (newPosition < 0) { + newPosition = 0; + } + SetPosition(QDBusObjectPath() /*unused*/, newPosition); } void MPrisPlugin::SetPosition(const QDBusObjectPath &path, qlonglong position)