Skip to content

keyboardlayout: wait for org.kde.keyboard service from kded asynchronously

Reason for the change

When X11 KDE session is starting, kded6 is started before kwin_x11 and plasmashell. kded6 is considered started when org.kde.kded6 dbus service is up. At that moment org.kde.keyboard dbus service is not up yet, but kwin_x11 and plasmashell are started. plasmashell expects org.kde.keyboard dbus service to be available when it runs, but due to scheduling kded6 may not start org.kde.keyboard service before plasmashell attempts to use it.

To make keyboard layout applet work even in that case, wait asynchronously for org.kde.keyboard service if it's not running at the moment.

Test plan

Changes were tested manually. Additional debug logs were added. It was checked that even in described scenario plasmashell connects to org.kde.keyboard service when it becomes available, and keyboard layout tray icon works as intended.

Bugs fixed

BUG: 495684

Merge request reports

Loading