From 98f5b1a22bd15299236d4bbd90fead68f11c56a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Toni=20F=C3=B6rster?= Date: Tue, 3 Sep 2024 14:58:18 +0200 Subject: [PATCH] mpv: remove video layer when entering background MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - fixes #792 Signed-off-by: Toni Förster --- Model/Player/PlayerModel.swift | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Model/Player/PlayerModel.swift b/Model/Player/PlayerModel.swift index 610873d0..001152b2 100644 --- a/Model/Player/PlayerModel.swift +++ b/Model/Player/PlayerModel.swift @@ -979,7 +979,11 @@ final class PlayerModel: ObservableObject { func handleEnterForeground() { setNeedsDrawing(presentingPlayer) - if !musicMode, activeBackend == .appleAVPlayer { + if !musicMode, activeBackend == .mpv { + mpvBackend.addVideoTrackFromStream() + mpvBackend.setVideoToAuto() + mpvBackend.controls.resetTimer() + } else if !musicMode, activeBackend == .appleAVPlayer { avPlayerBackend.bindPlayerToLayer() } @@ -1005,8 +1009,10 @@ final class PlayerModel: ObservableObject { func handleEnterBackground() { if Defaults[.pauseOnEnteringBackground], !playingInPictureInPicture, !musicMode { pause() - } else if !playingInPictureInPicture { + } else if !playingInPictureInPicture, activeBackend == .appleAVPlayer { avPlayerBackend.removePlayerFromLayer() + } else if activeBackend == .mpv, !musicMode { + mpvBackend.setVideoToNo() } #if os(iOS) guard playingFullScreen else { return }