]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kfileitemmodel.cpp
Prevent dragging on non-writable directories
[dolphin.git] / src / kitemviews / kfileitemmodel.cpp
index c7b3af76b7e9fe6409dad7e4d447ccbb1ee9061a..ebcd4b912156f7e89579a229b95f131ebbaccf2b 100644 (file)
@@ -324,8 +324,13 @@ int KFileItemModel::indexForKeyboardSearch(const QString &text, int startFromInd
 
 bool KFileItemModel::supportsDropping(int index) const
 {
-    const KFileItem item = fileItem(index);
-    return !item.isNull() && (item.isDir() || item.isDesktopFile());
+    KFileItem item;
+    if (index == -1) {
+        item = rootItem();
+    } else {
+        item = fileItem(index);
+    }
+    return !item.isNull() && ((item.isDir() && item.isWritable()) || item.isDesktopFile());
 }
 
 QString KFileItemModel::roleDescription(const QByteArray &role) const