From 9316baa7659537ba8ec81a2b5a4c8c92479c16bd Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Fri, 19 Nov 2021 11:50:50 +0100 Subject: [PATCH] MPV: Re create the MPV context at first toggle request if not already initialized --- src/UI/DocumentViews/MpvContainer.cc | 4 ++++ src/UI/DocumentViews/MpvControls.cc | 4 ---- src/UI/DocumentViews/MpvControls.hh | 1 - 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/UI/DocumentViews/MpvContainer.cc b/src/UI/DocumentViews/MpvContainer.cc index fb094d4e..1ba5067b 100644 --- a/src/UI/DocumentViews/MpvContainer.cc +++ b/src/UI/DocumentViews/MpvContainer.cc @@ -297,6 +297,10 @@ MpvContainer::mpvPause() noexcept void MpvContainer::mpvTogglePlayback() noexcept { + if (!isMpvAlreadyInitialized) { + reCreateMpvContext(); + } + logDebug() << "MPV: Toggling the playback"; asyncCommand(AsyncCmdType::TogglePlayback, { "cycle", "pause", "up", nullptr }); } diff --git a/src/UI/DocumentViews/MpvControls.cc b/src/UI/DocumentViews/MpvControls.cc index a9d63a8f..453c87c5 100644 --- a/src/UI/DocumentViews/MpvControls.cc +++ b/src/UI/DocumentViews/MpvControls.cc @@ -9,8 +9,6 @@ MpvControls::MpvControls(MpvContainer *passedContainer, QWidget *parent) noexcep { auto *progressBar = new QSlider(this); auto *togglePlaybackButton = new QPushButton(playIcon, "", this); // Be default MPV is paused - auto *reCreateMpvButton = new QPushButton( - reCreateMpvIcon, "", this); // Recreate the MPV context if something went wrong progressBar->setTracking(false); progressBar->setOrientation(Qt::Horizontal); @@ -56,7 +54,6 @@ MpvControls::MpvControls(MpvContainer *passedContainer, QWidget *parent) noexcep }); connect(togglePlaybackButton, &QAbstractButton::clicked, mpv, &MpvContainer::mpvTogglePlayback); - connect(reCreateMpvButton, &QAbstractButton::clicked, mpv, &MpvContainer::reCreateMpvContext); connect(mpv, &MpvContainer::mpvPlaybackToggled, this, [this, togglePlaybackButton](bool isPlay) noexcept -> void { togglePlaybackButton->setIcon(isPlay ? pauseIcon : playIcon); @@ -64,7 +61,6 @@ MpvControls::MpvControls(MpvContainer *passedContainer, QWidget *parent) noexcep auto *centralLayout = new QHBoxLayout(this); centralLayout->addWidget(togglePlaybackButton); - centralLayout->addWidget(reCreateMpvButton); centralLayout->addWidget(progressBar, 1); setLayout(centralLayout); } diff --git a/src/UI/DocumentViews/MpvControls.hh b/src/UI/DocumentViews/MpvControls.hh index 84cd143a..5c792dc7 100644 --- a/src/UI/DocumentViews/MpvControls.hh +++ b/src/UI/DocumentViews/MpvControls.hh @@ -23,7 +23,6 @@ private: const QIcon playIcon{ VIVY_ICON_PLAY }; const QIcon pauseIcon{ VIVY_ICON_PAUSE }; - const QIcon reCreateMpvIcon{ VIVY_ICON_RUN }; public: explicit MpvControls(MpvContainer *mpv, QWidget *parent) noexcept; -- GitLab