diff --git a/app/src/handlers/systemhandler.cpp b/app/src/handlers/systemhandler.cpp index 1f4a16b6366c1be247f07a1a2b4eb61c669d3471..f63200134c1d6555202dbcf3ef0657b49076c13c 100644 --- a/app/src/handlers/systemhandler.cpp +++ b/app/src/handlers/systemhandler.cpp @@ -221,8 +221,14 @@ bool SystemHandler::applyKdeIcon(const QString &themeName) const << "c.writeEntry('Theme', '" + themeName + "');"; if (setConfigWithPlasmaShell(script)) { - QProcess::startDetached("kquitapp5 plasmashell"); - QProcess::startDetached("kstart5 plasmashell"); + auto iconChangedMessage = QDBusMessage::createSignal("/KIconLoader", "org.kde.KIconLoader", "iconChanged"); + iconChangedMessage.setArguments(QVariantList() << QVariant(qint32(0))); + QDBusConnection::sessionBus().send(iconChangedMessage); + + auto notifyChangeMessage = QDBusMessage::createSignal("/KGlobalSettings", "org.kde.KGlobalSettings", "notifyChange"); + notifyChangeMessage.setArguments(QVariantList() << QVariant(qint32(4)) << QVariant(qint32(0))); + QDBusConnection::sessionBus().send(notifyChangeMessage); + return true; } return false;