diff options
| author | Méven Car <[email protected]> | 2020-11-09 12:30:43 +0000 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2020-11-09 12:30:43 +0000 |
| commit | 880766bd56c0331f39ecffaa08974b5117e3d72a (patch) | |
| tree | 76c19e02f647e55e6e5f5774defe257c4caeee4a /src/panels | |
| parent | f6327ffec89a33623983e0ed1cc09f46aeedc91c (diff) | |
PlacesItemListWidget: Use Solid to check if device is a network share
Diffstat (limited to 'src/panels')
| -rw-r--r-- | src/panels/places/placesitemlistwidget.cpp | 15 |
1 files 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 <KColorScheme> #include <KIO/FileSystemFreeSpaceJob> +#include <Solid/Device> +#include <Solid/NetworkShare> #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. |
