From a6f48f75dc76686c72da3e465391cfd3ba298997 Mon Sep 17 00:00:00 2001 From: rekols Date: Wed, 2 Jun 2021 20:31:26 +0800 Subject: [PATCH] Fix startup desktop --- settings-daemon/application.cpp | 13 +++++++++++++ settings-daemon/application.h | 2 ++ settings-daemon/theme/thememanager.cpp | 7 ------- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/settings-daemon/application.cpp b/settings-daemon/application.cpp index 8883afa..d2c71c0 100644 --- a/settings-daemon/application.cpp +++ b/settings-daemon/application.cpp @@ -27,6 +27,7 @@ #include #include #include +#include Application::Application(int &argc, char **argv) : QApplication(argc, argv) @@ -51,4 +52,16 @@ Application::Application(int &argc, char **argv) translator->deleteLater(); } } + + QTimer::singleShot(10, this, &Application::invokeDesktopProcess); +} + +void Application::invokeDesktopProcess() +{ + // Start desktop UI component. + QDBusInterface sessionInterface("org.cutefish.Session", "/Session", "org.cutefish.Session", + QDBusConnection::sessionBus()); + if (sessionInterface.isValid()) { + sessionInterface.call("startDesktopProcess"); + } } diff --git a/settings-daemon/application.h b/settings-daemon/application.h index d26ba5f..eea1f59 100644 --- a/settings-daemon/application.h +++ b/settings-daemon/application.h @@ -36,6 +36,8 @@ public: AudioManager *audioManager() { return m_audioManager; } + void invokeDesktopProcess(); + private: AudioManager *m_audioManager; ThemeManager *m_themeManager; diff --git a/settings-daemon/theme/thememanager.cpp b/settings-daemon/theme/thememanager.cpp index 7cef2a5..e2fcd17 100644 --- a/settings-daemon/theme/thememanager.cpp +++ b/settings-daemon/theme/thememanager.cpp @@ -66,13 +66,6 @@ ThemeManager::ThemeManager(QObject *parent) // Start the DE and need to update the settings again. initGtkConfig(); - - // Start desktop UI component. - QDBusInterface sessionInterface("org.cutefish.Session", "/Session", "org.cutefish.Session", - QDBusConnection::sessionBus()); - if (sessionInterface.isValid()) { - sessionInterface.call("startDesktopProcess"); - } } bool ThemeManager::isDarkMode()