From 2a8055c513010e61bd325667aca80ee047550317 Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 10 Jun 2021 10:31:47 +0400 Subject: [PATCH] Fix action invocation after dragging PiP window. Regression was introduced in d752aa3481. --- .../SourceFiles/media/view/media_view_pip.cpp | 33 ++++++++----------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/Telegram/SourceFiles/media/view/media_view_pip.cpp b/Telegram/SourceFiles/media/view/media_view_pip.cpp index 9059c49a9..9a1188c7e 100644 --- a/Telegram/SourceFiles/media/view/media_view_pip.cpp +++ b/Telegram/SourceFiles/media/view/media_view_pip.cpp @@ -1022,27 +1022,22 @@ void Pip::handleMouseRelease(QPoint position, Qt::MouseButton button) { seekUpdate(position); volumeControllerUpdate(position); const auto pressed = base::take(_pressed); - if (pressed) { - if (*pressed == OverState::Playback) { - _panel.setDragDisabled(false); - seekFinish(_playbackProgress->value()); - return; - } else if (*pressed == OverState::VolumeController) { - _panel.setDragDisabled(false); - _panel.update(); - return; - } + if (pressed && *pressed == OverState::Playback) { + _panel.setDragDisabled(false); + seekFinish(_playbackProgress->value()); + } else if (pressed && *pressed == OverState::VolumeController) { + _panel.setDragDisabled(false); + _panel.update(); } else if (_panel.dragging() || !pressed || *pressed != _over) { _lastHandledPress = std::nullopt; - return; - } - - _lastHandledPress = _over; - switch (_over) { - case OverState::Close: _panel.widget()->close(); break; - case OverState::Enlarge: _closeAndContinue(); break; - case OverState::VolumeToggle: volumeToggled(); break; - case OverState::Other: playbackPauseResume(); break; + } else { + _lastHandledPress = _over; + switch (_over) { + case OverState::Close: _panel.widget()->close(); break; + case OverState::Enlarge: _closeAndContinue(); break; + case OverState::VolumeToggle: volumeToggled(); break; + case OverState::Other: playbackPauseResume(); break; + } } }