[ksmserver] Remove blocking call introspecting KDED

Summary:
We don't need to introspect at runtime as KDED installs the interface
XML file.

Oddly KDED's package is called KDED not KF5KDED, hence the separate
find_package, I don't know if that's a bug in frameworks or not.

Test Plan: Compiles

Reviewers: #plasma, romangg

Reviewed By: #plasma, romangg

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D16628
wilder-broken-krunner
David Edmundson 7 years ago
parent 008d58cfc6
commit c8ed48fc1a
  1. 2
      CMakeLists.txt
  2. 1
      ksmserver/CMakeLists.txt
  3. 9
      ksmserver/startup.cpp

@ -27,6 +27,8 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
Plasma DocTools Runner JsEmbed NotifyConfig Su NewStuff Wallet Plasma DocTools Runner JsEmbed NotifyConfig Su NewStuff Wallet
IdleTime Declarative TextWidgets KDELibs4Support Crash GlobalAccel IdleTime Declarative TextWidgets KDELibs4Support Crash GlobalAccel
DBusAddons Wayland CoreAddons) DBusAddons Wayland CoreAddons)
find_package(KDED CONFIG REQUIRED)
find_package(KF5NetworkManagerQt ${KF5_MIN_VERSION}) find_package(KF5NetworkManagerQt ${KF5_MIN_VERSION})
set_package_properties(KF5NetworkManagerQt PROPERTIES DESCRIPTION "Qt wrapper for NetworkManager API" set_package_properties(KF5NetworkManagerQt PROPERTIES DESCRIPTION "Qt wrapper for NetworkManager API"
TYPE OPTIONAL TYPE OPTIONAL

@ -33,6 +33,7 @@ set(kcminit_xml ${CMAKE_CURRENT_BINARY_DIR}/org.kde.KCMinit.xml)
qt5_generate_dbus_interface( ${kcminit_adaptor} ${kcminit_xml} ) qt5_generate_dbus_interface( ${kcminit_adaptor} ${kcminit_xml} )
qt5_add_dbus_interface( ksmserver_KDEINIT_SRCS ${kcminit_xml} kcminit_interface ) qt5_add_dbus_interface( ksmserver_KDEINIT_SRCS ${kcminit_xml} kcminit_interface )
qt5_add_dbus_interface( ksmserver_KDEINIT_SRCS ${KDED_DBUS_INTERFACE} kded_interface )
# FIXME: This is actually not disabled any more because OrgKDEKlauncherInterface isn't provided # FIXME: This is actually not disabled any more because OrgKDEKlauncherInterface isn't provided
# otherwise. # otherwise.

@ -41,6 +41,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <ksmserver_debug.h> #include <ksmserver_debug.h>
#include "kcminit_interface.h" #include "kcminit_interface.h"
#include "kded_interface.h"
#include <klauncher_interface.h> #include <klauncher_interface.h>
#include <KCompositeJob> #include <KCompositeJob>
@ -254,10 +255,10 @@ KDEDInitJob::KDEDInitJob()
void KDEDInitJob::start() { void KDEDInitJob::start() {
qCDebug(KSMSERVER()); qCDebug(KSMSERVER());
QDBusInterface kded( QStringLiteral( "org.kde.kded5" ), org::kde::kded5 kded( QStringLiteral("org.kde.kded5"),
QStringLiteral( "/kded" ), QStringLiteral("/kded"),
QStringLiteral( "org.kde.kded5" ) ); QDBusConnection::sessionBus());
auto pending = kded.asyncCall( QStringLiteral( "loadSecondPhase" ) ); auto pending = kded.loadSecondPhase();
QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(pending, this); QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(pending, this);
connect(watcher, &QDBusPendingCallWatcher::finished, this, [this]() {emitResult();}); connect(watcher, &QDBusPendingCallWatcher::finished, this, [this]() {emitResult();});

Loading…
Cancel
Save