diff --git a/applets/kicker/plugin/recentusagemodel.cpp b/applets/kicker/plugin/recentusagemodel.cpp --- a/applets/kicker/plugin/recentusagemodel.cpp +++ b/applets/kicker/plugin/recentusagemodel.cpp @@ -22,6 +22,7 @@ #include "appsmodel.h" #include "appentry.h" #include "kastatsfavoritesmodel.h" +#include #include #include @@ -245,8 +246,19 @@ } #if KIO_VERSION >= QT_VERSION_CHECK(5,57,0) - // Avoid calling QT_LSTAT and accessing recent documents - const KFileItem fileItem(url, KFileItem::SkipMimeTypeFromContent); + KFileItem fileItem; + if (url.isLocalFile()) { + // taken from kfileitem::isSlow + const KFileSystemType::Type fsType = KFileSystemType::fileSystemType(url.path()); + if ((fsType == KFileSystemType::Nfs || fsType == KFileSystemType::Smb)) { + // Avoid calling QT_LSTAT when accessing recent documents + fileItem = KFileItem (url, KFileItem::SkipMimeTypeFromContent); + } else { + fileItem = KFileItem (url); + } + } else { + fileItem = KFileItem (url); + } #else const KFileItem fileItem(url); #endif