From cde6acd2249cf1f9f545571f4be57275a68fdff8 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Sat, 7 Sep 2024 11:20:33 -0400 Subject: [PATCH] [keyboard] Send DBus signal to KWin for new keyboard layout --- src/modules/keyboard/Config.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/modules/keyboard/Config.cpp b/src/modules/keyboard/Config.cpp index 505aa3e51..54ee7649c 100644 --- a/src/modules/keyboard/Config.cpp +++ b/src/modules/keyboard/Config.cpp @@ -378,14 +378,23 @@ Config::applyKWin() const QString layouts = join( m_selectedLayout, m_additionalLayoutInfo.additionalLayout ); const QString variants = join( m_selectedVariant, m_additionalLayoutInfo.additionalVariant ); + bool updated = false; for ( const auto& path : paths ) { const QString candidate = path + QStringLiteral( "/kxkbrc" ); if ( rewriteKWin( candidate, m_selectedModel, layouts, variants ) ) { + updated = true; break; } } + + if ( updated ) + { + auto kwin = QDBusMessage::createSignal( + QStringLiteral( "/Layouts" ), QStringLiteral( "org.kde.keyboard" ), QStringLiteral( "reloadConfig" ) ); + QDBusConnection::sessionBus().send( kwin ); + } }