From 880766bd56c0331f39ecffaa08974b5117e3d72a Mon Sep 17 00:00:00 2001 From: =?utf8?q?M=C3=A9ven=20Car?= Date: Mon, 9 Nov 2020 12:30:43 +0000 Subject: [PATCH] PlacesItemListWidget: Use Solid to check if device is a network share --- src/panels/places/placesitemlistwidget.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/panels/places/placesitemlistwidget.cpp b/src/panels/places/placesitemlistwidget.cpp index 745a6ae1b..38bc13438 100644 --- a/src/panels/places/placesitemlistwidget.cpp +++ b/src/panels/places/placesitemlistwidget.cpp @@ -12,6 +12,8 @@ #include #include +#include +#include #define CAPACITYBAR_HEIGHT 2 #define CAPACITYBAR_MARGIN 2 @@ -41,12 +43,19 @@ QPalette::ColorRole PlacesItemListWidget::normalTextColorRole() const void PlacesItemListWidget::updateCapacityBar() { - const bool isDevice = !data().value("udi").toString().isEmpty(); - const QUrl url = data().value("url").toUrl(); - if (!(isDevice && url.isLocalFile())) { + const QString udi = data().value("udi").toString(); + if (udi.isEmpty()) { resetCapacityBar(); return; } + const Solid::Device device = Solid::Device(udi); + if (device.isDeviceInterface(Solid::DeviceInterface::NetworkShare) + || device.isDeviceInterface(Solid::DeviceInterface::OpticalDrive) + || device.isDeviceInterface(Solid::DeviceInterface::OpticalDisc)) { + resetCapacityBar(); + return; + } + const QUrl url = data().value("url").toUrl(); if (m_freeSpaceInfo.job || !m_freeSpaceInfo.lastUpdated.hasExpired()) { // Job running or cache is still valid. -- 2.47.3