Use better way to disable session management

This commit is contained in:
Nicolas Fella
2025-11-06 20:44:33 +01:00
parent 59cee652b7
commit 285af38292

View File

@@ -11,7 +11,6 @@
#include <QIcon>
#include <QProcess>
#include <QQuickStyle>
#include <QSessionManager>
#include <QStandardPaths>
#include <QTimer>
@@ -66,6 +65,9 @@ int main(int argc, char *argv[])
detectPlatform(argc, argv);
QGuiApplication::setQuitLockEnabled(false);
// kdeconnectd is autostarted, so disable session management to speed up startup
QCoreApplication::setAttribute(Qt::AA_DisableSessionManager);
QApplication app(argc, argv);
KAboutData aboutData(QStringLiteral("kdeconnect.daemon"),
i18n("KDE Connect Daemon"),
@@ -119,12 +121,5 @@ int main(int argc, char *argv[])
QProcess::startDetached(QStringLiteral("kdeconnect-indicator.exe"), QStringList());
#endif
// kdeconnectd is autostarted, so disable session management to speed up startup
auto disableSessionManagement = [](QSessionManager &sm) {
sm.setRestartHint(QSessionManager::RestartNever);
};
QObject::connect(&app, &QGuiApplication::commitDataRequest, disableSessionManagement);
QObject::connect(&app, &QGuiApplication::saveStateRequest, disableSessionManagement);
return app.exec();
}