]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/places/placesitemlistwidget.cpp
Fix opening FTP files in their preferred app
[dolphin.git] / src / panels / places / placesitemlistwidget.cpp
index 38bc13438c6335b8182f61e952e475fe09e20e9f..ba7a0c4fa0c896d233b6d86a806d3cfd484bbf5c 100644 (file)
@@ -7,11 +7,9 @@
 #include "placesitemlistwidget.h"
 
 #include <QStyleOption>
-#include <QPainter>
 
 #include <KColorScheme>
 
-#include <KIO/FileSystemFreeSpaceJob>
 #include <Solid/Device>
 #include <Solid/NetworkShare>
 
@@ -57,8 +55,8 @@ void PlacesItemListWidget::updateCapacityBar()
     }
     const QUrl url = data().value("url").toUrl();
 
-    if (m_freeSpaceInfo.job || !m_freeSpaceInfo.lastUpdated.hasExpired()) {
-        // Job running or cache is still valid.
+    if (url.isEmpty() || m_freeSpaceInfo.job || !m_freeSpaceInfo.lastUpdated.hasExpired()) {
+        // No url, job running or cache is still valid.
         return;
     }
 
@@ -106,7 +104,8 @@ void PlacesItemListWidget::paint(QPainter* painter, const QStyleOptionGraphicsIt
 {
     KStandardItemListWidget::paint(painter, option, widget);
 
-    if (m_drawCapacityBar) {
+    // We check if option=nullptr since it is null when the place is dragged (Bug #430441)
+    if (m_drawCapacityBar && option) {
         const TextInfo* textInfo = m_textInfo.value("text");
         if (textInfo) { // See KStandarItemListWidget::paint() for info on why we check textInfo.
             painter->save();