┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Uwe Broulik <[email protected]>2019-02-04 09:12:35 +0100
committerKai Uwe Broulik <[email protected]>2019-02-04 09:12:35 +0100
commitb2b913c84423313c39227050d886376650c48cf3 (patch)
treece792c30dfafa6a4372c8f40932671a3e6c0abe8
parentfb4b4465f91581dac6a876568ba21ed67ec918bc (diff)
Use more suitable default view mode for recent documents and Downloads folder
Sort them descending by date as well as: * for Recent Documents: switch to details view * for Downloads enable grouping and disable sorting folders first Differential Revision: https://phabricator.kde.org/D18697
-rw-r--r--src/views/viewproperties.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp
index e056e25e3..eddc7225d 100644
--- a/src/views/viewproperties.cpp
+++ b/src/views/viewproperties.cpp
@@ -49,6 +49,8 @@ ViewProperties::ViewProperties(const QUrl& url) :
GeneralSettings* settings = GeneralSettings::self();
const bool useGlobalViewProps = settings->globalViewProps() || url.isEmpty();
bool useDetailsViewWithPath = false;
+ bool useRecentDocumentsView = false;
+ bool useDownloadsView = false;
// We try and save it to the file .directory in the directory being viewed.
// If the directory is not writable by the user or the directory is not local,
@@ -61,6 +63,9 @@ ViewProperties::ViewProperties(const QUrl& url) :
} else if (url.scheme() == QLatin1String("trash")) {
m_filePath = destinationDir(QStringLiteral("trash"));
useDetailsViewWithPath = true;
+ } else if (url.scheme() == QLatin1String("recentdocuments")) {
+ m_filePath = destinationDir(QStringLiteral("recentdocuments"));
+ useRecentDocumentsView = true;
} else if (url.isLocalFile()) {
m_filePath = url.toLocalFile();
@@ -78,6 +83,10 @@ ViewProperties::ViewProperties(const QUrl& url) :
#endif
m_filePath = destinationDir(QStringLiteral("local")) + m_filePath;
}
+
+ if (m_filePath == QStandardPaths::writableLocation(QStandardPaths::DownloadLocation)) {
+ useDownloadsView = true;
+ }
} else {
m_filePath = destinationDir(QStringLiteral("remote")) + m_filePath;
}
@@ -94,6 +103,17 @@ ViewProperties::ViewProperties(const QUrl& url) :
if (useDetailsViewWithPath) {
setViewMode(DolphinView::DetailsView);
setVisibleRoles({"path"});
+ } else if (useRecentDocumentsView || useDownloadsView) {
+ setSortRole(QByteArrayLiteral("modificationtime"));
+ setSortOrder(Qt::DescendingOrder);
+
+ if (useRecentDocumentsView) {
+ setViewMode(DolphinView::DetailsView);
+ setVisibleRoles({QByteArrayLiteral("path")});
+ } else if (useDownloadsView) {
+ setSortFoldersFirst(false);
+ setGroupedSorting(true);
+ }
} else {
// The global view-properties act as default for directories without
// any view-property configuration. Constructing a ViewProperties