From 54567a42534ffb2bfe334942f96184adea8c78bb Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Sun, 6 Dec 2020 18:01:37 +0300 Subject: [PATCH] Replaced Application::appDeactivates with appDeactivatedValue. --- .../SourceFiles/calls/calls_group_members.cpp | 2 +- .../SourceFiles/calls/calls_group_panel.cpp | 2 +- Telegram/SourceFiles/core/application.cpp | 17 +++++++++++------ Telegram/SourceFiles/core/application.h | 2 +- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/Telegram/SourceFiles/calls/calls_group_members.cpp b/Telegram/SourceFiles/calls/calls_group_members.cpp index 6b190731fe..b173239af2 100644 --- a/Telegram/SourceFiles/calls/calls_group_members.cpp +++ b/Telegram/SourceFiles/calls/calls_group_members.cpp @@ -521,7 +521,7 @@ MembersController::MembersController( rpl::combine( rpl::single(anim::Disabled()) | rpl::then(anim::Disables()), - rpl::single(false) | rpl::then(Core::App().appDeactivates()) + rpl::single(false) | rpl::then(Core::App().appDeactivatedValue()) ) | rpl::start_with_next([=](bool animDisabled, bool deactivated) { const auto hide = !(!animDisabled && !deactivated); diff --git a/Telegram/SourceFiles/calls/calls_group_panel.cpp b/Telegram/SourceFiles/calls/calls_group_panel.cpp index b3132c43bc..80339859d5 100644 --- a/Telegram/SourceFiles/calls/calls_group_panel.cpp +++ b/Telegram/SourceFiles/calls/calls_group_panel.cpp @@ -223,7 +223,7 @@ GroupPanel::GroupPanel(not_null call) , _settings(widget(), st::groupCallSettings) , _mute(std::make_unique( widget(), - Core::App().appDeactivates(), + Core::App().appDeactivatedValue(), Ui::CallMuteButtonState{ .text = tr::lng_group_call_connecting(tr::now), .type = Ui::CallMuteButtonType::Connecting, diff --git a/Telegram/SourceFiles/core/application.cpp b/Telegram/SourceFiles/core/application.cpp index 211316c7b2..2d2b59b9e2 100644 --- a/Telegram/SourceFiles/core/application.cpp +++ b/Telegram/SourceFiles/core/application.cpp @@ -247,7 +247,7 @@ void Application::run() { QCoreApplication::instance()->installEventFilter(this); - appDeactivates( + appDeactivatedValue( ) | rpl::start_with_next([=](bool deactivated) { if (deactivated) { handleAppDeactivated(); @@ -652,11 +652,16 @@ void Application::handleAppDeactivated() { Ui::Tooltip::Hide(); } -rpl::producer Application::appDeactivates() const { - return base::qt_signal_producer( - static_cast(QCoreApplication::instance()), - &QGuiApplication::applicationStateChanged - ) | rpl::map([=](Qt::ApplicationState state) { +rpl::producer Application::appDeactivatedValue() const { + const auto &app = + static_cast(QCoreApplication::instance()); + return rpl::single( + app->applicationState() + ) | rpl::then( + base::qt_signal_producer( + app, + &QGuiApplication::applicationStateChanged + )) | rpl::map([=](Qt::ApplicationState state) { return (state != Qt::ApplicationActive); }); } diff --git a/Telegram/SourceFiles/core/application.h b/Telegram/SourceFiles/core/application.h index 1238bd39db..82b5cd3901 100644 --- a/Telegram/SourceFiles/core/application.h +++ b/Telegram/SourceFiles/core/application.h @@ -271,7 +271,7 @@ public: void handleAppActivated(); void handleAppDeactivated(); - [[nodiscard]] rpl::producer appDeactivates() const; + [[nodiscard]] rpl::producer appDeactivatedValue() const; void switchDebugMode(); void switchFreeType();