]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kfileitemmodel.cpp
Port to QRecursiveMutex
[dolphin.git] / src / kitemviews / kfileitemmodel.cpp
index dbbd63a6a19d38feee20d1987c00ffe71f21cbbc..75f3dde74cec23ac4318482f38bebbe925004ead 100644 (file)
@@ -14,6 +14,7 @@
 #include "private/kfileitemmodeldirlister.h"
 #include "private/kfileitemmodelsortalgorithm.h"
 
+#include <kio_version.h>
 #include <KLocalizedString>
 #include <KUrlMimeData>
 
 #include <QMimeDatabase>
 #include <QTimer>
 #include <QWidget>
-#include <QMutex>
+#include <QRecursiveMutex>
 #include <QIcon>
 
-Q_GLOBAL_STATIC_WITH_ARGS(QMutex, s_collatorMutex, (QMutex::Recursive))
+Q_GLOBAL_STATIC(QRecursiveMutex, s_collatorMutex)
 
 // #define KFILEITEMMODEL_DEBUG
 
@@ -62,7 +63,6 @@ KFileItemModel::KFileItemModel(QObject* parent) :
 
     connect(m_dirLister, &KFileItemModelDirLister::started, this, &KFileItemModel::directoryLoadingStarted);
     connect(m_dirLister, QOverload<>::of(&KCoreDirLister::canceled), this, &KFileItemModel::slotCanceled);
-    connect(m_dirLister, QOverload<const QUrl&>::of(&KCoreDirLister::completed), this, &KFileItemModel::slotCompleted);
     connect(m_dirLister, &KFileItemModelDirLister::itemsAdded, this, &KFileItemModel::slotItemsAdded);
     connect(m_dirLister, &KFileItemModelDirLister::itemsDeleted, this, &KFileItemModel::slotItemsDeleted);
     connect(m_dirLister, &KFileItemModelDirLister::refreshItems, this, &KFileItemModel::slotRefreshItems);
@@ -73,6 +73,12 @@ KFileItemModel::KFileItemModel(QObject* parent) :
     connect(m_dirLister, QOverload<const QUrl&, const QUrl&>::of(&KCoreDirLister::redirection), this, &KFileItemModel::directoryRedirection);
     connect(m_dirLister, &KFileItemModelDirLister::urlIsFileError, this, &KFileItemModel::urlIsFileError);
 
+#if KIO_VERSION < QT_VERSION_CHECK(5, 79, 0)
+    connect(m_dirLister, QOverload<const QUrl&>::of(&KCoreDirLister::completed), this, &KFileItemModel::slotCompleted);
+#else
+    connect(m_dirLister, &KCoreDirLister::listingDirCompleted, this, &KFileItemModel::slotCompleted);
+#endif
+
     // Apply default roles that should be determined
     resetRoles();
     m_requestRole[NameRole] = true;