From 48072446821edcdd11b502906bb2123a903be321 Mon Sep 17 00:00:00 2001 From: Ilya Fedin Date: Sun, 3 Sep 2023 23:43:15 +0400 Subject: [PATCH] Don't use crl::on_main unnecessarily with XDP::SettingWatcher g_dbus_connection_signal_subscribe calls the callback on the same thread --- .../platform/linux/integration_linux.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Telegram/SourceFiles/platform/linux/integration_linux.cpp b/Telegram/SourceFiles/platform/linux/integration_linux.cpp index f842fd808..bdbd51999 100644 --- a/Telegram/SourceFiles/platform/linux/integration_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/integration_linux.cpp @@ -216,14 +216,13 @@ LinuxIntegration::LinuxIntegration() #if QT_VERSION >= QT_VERSION_CHECK(6, 5, 0) QWindowSystemInterface::handleThemeChange(); #else // Qt >= 6.5.0 - try { - const auto ivalue = value.get_dynamic(); - - crl::on_main([=] { - Core::App().settings().setSystemDarkMode(ivalue == 1); - }); - } catch (...) { - } + Core::Sandbox::Instance().customEnterFromEventLoop([&] { + try { + Core::App().settings().setSystemDarkMode( + value.get_dynamic() == 1); + } catch (...) { + } + }); #endif // Qt < 6.5.0 } }) {