X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/41f7f4e4e89b97b5c7f31452774c37ce953dd125..769d1470267247efdffe8b9a2464f21c905d195d:/src/views/viewproperties.cpp diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp index 48ed65471..2bfdfe81b 100644 --- a/src/views/viewproperties.cpp +++ b/src/views/viewproperties.cpp @@ -1,22 +1,9 @@ -/*************************************************************************** - * Copyright (C) 2006-2010 by Peter Penz * - * Copyright (C) 2006 by Aaron J. Seigo * - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - ***************************************************************************/ +/* + * SPDX-FileCopyrightText: 2006-2010 Peter Penz + * SPDX-FileCopyrightText: 2006 Aaron J. Seigo + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ #include "viewproperties.h" @@ -59,7 +46,7 @@ ViewProperties::ViewProperties(const QUrl& url) : // we store the properties information in a local file. if (useGlobalViewProps) { m_filePath = destinationDir(QStringLiteral("global")); - } else if (url.scheme().contains(QStringLiteral("search"))) { + } else if (url.scheme().contains(QLatin1String("search"))) { m_filePath = destinationDir(QStringLiteral("search/")) + directoryHashForUrl(url); useDetailsViewWithPath = true; } else if (url.scheme() == QLatin1String("trash")) { @@ -68,6 +55,9 @@ ViewProperties::ViewProperties(const QUrl& url) : } else if (url.scheme() == QLatin1String("recentdocuments")) { m_filePath = destinationDir(QStringLiteral("recentdocuments")); useRecentDocumentsView = true; + } else if (url.scheme() == QLatin1String("recentlyused")) { + m_filePath = destinationDir(QStringLiteral("recentlyused")); + useRecentDocumentsView = true; } else if (url.isLocalFile()) { m_filePath = url.toLocalFile(); @@ -258,6 +248,19 @@ bool ViewProperties::sortFoldersFirst() const return m_node->sortFoldersFirst(); } +void ViewProperties::setSortHiddenLast(bool hiddenLast) +{ + if (m_node->sortHiddenLast() != hiddenLast) { + m_node->setSortHiddenLast(hiddenLast); + update(); + } +} + +bool ViewProperties::sortHiddenLast() const +{ + return m_node->sortHiddenLast(); +} + void ViewProperties::setVisibleRoles(const QList& roles) { if (roles == visibleRoles()) { @@ -279,7 +282,7 @@ void ViewProperties::setVisibleRoles(const QList& roles) // Add the updated values for the current view-mode newVisibleRoles.reserve(roles.count()); - foreach (const QByteArray& role, roles) { + for (const QByteArray& role : roles) { newVisibleRoles.append(prefix + role); } @@ -322,7 +325,7 @@ QList ViewProperties::visibleRoles() const const int prefixLength = prefix.length(); const QStringList visibleRoles = m_node->visibleRoles(); - foreach (const QString& visibleRole, visibleRoles) { + for (const QString& visibleRole : visibleRoles) { if (visibleRole.startsWith(prefix)) { const QByteArray role = visibleRole.right(visibleRole.length() - prefixLength).toLatin1(); if (role != "text") { @@ -366,6 +369,7 @@ void ViewProperties::setDirProperties(const ViewProperties& props) setSortRole(props.sortRole()); setSortOrder(props.sortOrder()); setSortFoldersFirst(props.sortFoldersFirst()); + setSortHiddenLast(props.sortHiddenLast()); setVisibleRoles(props.visibleRoles()); setHeaderColumnWidths(props.headerColumnWidths()); m_node->setVersion(props.m_node->version()); @@ -405,7 +409,7 @@ bool ViewProperties::exist() const QString ViewProperties::destinationDir(const QString& subDir) const { - QString path = QStandardPaths::writableLocation(QStandardPaths::DataLocation); + QString path = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation); path.append("/view_properties/").append(subDir); return path; } @@ -435,7 +439,7 @@ void ViewProperties::convertAdditionalInfo() // the internal role. One special-case must be handled: "LinkDestination" // has been used for "destination". visibleRoles.reserve(additionalInfo.count()); - foreach (const QString& info, additionalInfo) { + for (const QString& info : additionalInfo) { QString visibleRole = info; int index = visibleRole.indexOf('_'); if (index >= 0 && index + 1 < visibleRole.length()) {