From 8e3d3279e7f8f7001cc7390925a24b4b39873d0b Mon Sep 17 00:00:00 2001 From: kateleet Date: Sun, 5 Dec 2021 21:47:47 +0800 Subject: [PATCH] Session: Add cutefish-daemon --- session/application.cpp | 8 ++++++++ session/application.h | 1 + session/processmanager.cpp | 4 ++++ 3 files changed, 13 insertions(+) diff --git a/session/application.cpp b/session/application.cpp index 5196a14..70ec9cd 100644 --- a/session/application.cpp +++ b/session/application.cpp @@ -129,6 +129,7 @@ Application::Application(int &argc, char **argv) m_networkProxyManager->update(); + QTimer::singleShot(50, this, &Application::updateUserDirs); QTimer::singleShot(100, m_processManager, &ProcessManager::start); } @@ -363,6 +364,13 @@ void Application::createConfigDirectory() qDebug() << "Could not create config directory XDG_CONFIG_HOME: " << configDir; } +void Application::updateUserDirs() +{ + QProcess p; + p.start("xdg-user-dirs-update", QStringList()); + p.waitForFinished(-1); +} + int Application::runSync(const QString &program, const QStringList &args, const QStringList &env) { QProcess p; diff --git a/session/application.h b/session/application.h index 54a0880..0638ba8 100644 --- a/session/application.h +++ b/session/application.h @@ -74,6 +74,7 @@ private: bool syncDBusEnvironment(); void importSystemdEnvrionment(); void createConfigDirectory(); + void updateUserDirs(); int runSync(const QString &program, const QStringList &args, const QStringList &env = {}); private: diff --git a/session/processmanager.cpp b/session/processmanager.cpp index 9789b06..cc55d05 100644 --- a/session/processmanager.cpp +++ b/session/processmanager.cpp @@ -163,6 +163,10 @@ void ProcessManager::startDaemonProcess() list << qMakePair(QString("cutefish-gmenuproxy"), QStringList()); list << qMakePair(QString("chotkeys"), QStringList()); + if (QFile("/usr/bin/cutefish-daemon").exists()) { + list << qMakePair(QString("cutefish-daemon"), QStringList()); + } + for (QPair pair : list) { QProcess *process = new QProcess; process->setProcessChannelMode(QProcess::ForwardedChannels);