diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -45,6 +45,7 @@ Declarative Activities ActivitiesStats + GuiAddons # UrlHanlder hanldes help:/ urls QUIET ) diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt --- a/app/CMakeLists.txt +++ b/app/CMakeLists.txt @@ -31,6 +31,7 @@ KF5::DBusAddons KF5::ConfigGui KF5::QuickAddons + KF5::GuiAddons # UrlHanlder handles help:/ urls PW::KWorkspace ) diff --git a/core/ModuleView.cpp b/core/ModuleView.cpp --- a/core/ModuleView.cpp +++ b/core/ModuleView.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include @@ -325,8 +326,10 @@ if( docPath.isEmpty() ) { return; } - QUrl url( QStringLiteral("help:/")+docPath ); - QProcess::startDetached(QStringLiteral("khelpcenter"), QStringList() << url.url()); + + // UrlHandler from KGUIAddons sets a handler for help:/ urls, which opens khelpcenter + // if it's available or falls back to opening the relevant page at docs.kde.org + QDesktopServices::openUrl(QUrl(QStringLiteral("help:/") + docPath)); } void ModuleView::activeModuleChanged(KPageWidgetItem * current, KPageWidgetItem * previous)