https://bugs.kde.org/show_bug.cgi?id=422111
--- Comment #66 from Sam Edwards <cfswo...@gmail.com> --- I think we're off to a false start by looking at powerdevil (although it may be useful to know WHY this happens) I added a bunch of debug messages to applets/systemtray/dbusserviceobserver.cpp. When this issue happens, the "org.kde.Solid.PowerManagement" service is absent from the list(s) processed in DBusServiceObserver::serviceNameFetchFinished(), but present in the list output from qdbus; I also get a serviceUnregistered() for it when I kill powerdevil. When restarting plasmashell, it comes back up during a time when the PowerManagement service is already registered, so it appears in the service list, and the battery applet appears. When restarting powerdevil, plasmashell receives the service-registered event when PowerManagement is re-registered, and the battery applet appears. The following are always present in the serviceNameFetchFinished lists, whether the issue happens or not: "org.kde.powerdevil.chargethresholdhelper", "local.org_kde_powerdevil", "org.kde.powerdevil.discretegpuhelper", "org.kde.powerdevil.backlighthelper" So, powerdevil is alive at the time the systemtray initializes, but (probably because it's delayed by a few ms to talk to logind) hasn't registered the PowerManagement service yet; it instead gets registered during a time that, for some reason, the QDBusServiceWatcher doesn't report it. The serviceRegistered callback is working normally prior to the call to initDBusActivatables, as well as after both lists are returned. On a launch where the issue doesn't happen, the PowerManagement service shows up right after the lists are processed. Is there perhaps some window where the QDBusPendingCallWatcher is temporarily paused (or some bug with DBus itself) where the systemtray is momentarily blind to new services, and the issue happens because powerdevil is delayed just enough to register PowerManagement during that blind period? -- You are receiving this mail because: You are watching all bug changes.