diff --git a/Telegram/SourceFiles/core/application.cpp b/Telegram/SourceFiles/core/application.cpp index a53162549..f618adae2 100644 --- a/Telegram/SourceFiles/core/application.cpp +++ b/Telegram/SourceFiles/core/application.cpp @@ -1118,10 +1118,11 @@ void Application::updateWindowTitles() { } void Application::lockByPasscode() { + _passcodeLock = true; enumerateWindows([&](not_null w) { - _passcodeLock = true; w->setupPasscodeLock(); }); + hideMediaView(); } void Application::maybeLockByPasscode() { diff --git a/Telegram/SourceFiles/mainwindow.cpp b/Telegram/SourceFiles/mainwindow.cpp index 11c2459b2..242511581 100644 --- a/Telegram/SourceFiles/mainwindow.cpp +++ b/Telegram/SourceFiles/mainwindow.cpp @@ -194,7 +194,6 @@ void MainWindow::setupPasscodeLock() { _passcodeLock.create(bodyWidget(), &controller()); updateControlsGeometry(); - Core::App().hideMediaView(); ui_hideSettingsAndLayer(anim::type::instant); if (_main) { _main->hide(); diff --git a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp index bf2e83d62..84d1d2a57 100644 --- a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp +++ b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp @@ -3380,6 +3380,13 @@ void OverlayWidget::switchToPip() { }) | rpl::start_with_next([=] { _pip = nullptr; }, _pip->lifetime); + + Core::App().passcodeLockChanges( + ) | rpl::filter( + rpl::mappers::_1 + ) | rpl::start_with_next([=] { + _pip = nullptr; + }, _pip->lifetime); } if (isHidden()) {