From 0a8f84a52dcd246550b5ea0e795dd7b309f2ece1 Mon Sep 17 00:00:00 2001 From: Nicolas Fella Date: Mon, 11 Dec 2023 01:19:15 +0100 Subject: [PATCH] Offer installing Filelight if no disk usage analyzer was found This avoids an empty menu and points the user towards a useful tool BUG: 477739 --- src/statusbar/statusbarspaceinfo.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/statusbar/statusbarspaceinfo.cpp b/src/statusbar/statusbarspaceinfo.cpp index 253d912c0d..9df4164676 100644 --- a/src/statusbar/statusbarspaceinfo.cpp +++ b/src/statusbar/statusbarspaceinfo.cpp @@ -14,6 +14,7 @@ #include #include +#include #include #include #include @@ -115,7 +116,17 @@ void StatusBarSpaceInfo::updateMenu() const KService::Ptr kdiskfree = KService::serviceByDesktopName(QStringLiteral("org.kde.kdf")); if (!filelight && !kdiskfree) { - // nothing to show + QAction *installFilelight = + m_buttonMenu->addAction(QIcon::fromTheme(QStringLiteral("filelight")), i18n("Install Filelight to View Disk Usage Statistics…")); + + connect(installFilelight, &QAction::triggered, this, [] { +#ifdef Q_OS_WIN + QDesktopServices::openUrl(QUrl("https://apps.kde.org/filelight")); +#else + QDesktopServices::openUrl(QUrl("appstream://org.kde.filelight.desktop")); +#endif + }); + return; }