From: Kai Uwe Broulik Date: Fri, 25 Mar 2022 17:28:54 +0000 (+0100) Subject: [ViewProperties] Consider existing roles in convertAdditionalInfo X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/e304aa79b42bc7382376aef855e3e4366bb345b3?ds=sidebyside [ViewProperties] Consider existing roles in convertAdditionalInfo Otherwise all default overrides for roles we perform in this class are moot. --- diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp index 2bfdfe81b..0274d5095 100644 --- a/src/views/viewproperties.cpp +++ b/src/views/viewproperties.cpp @@ -430,7 +430,7 @@ QString ViewProperties::viewModePrefix() const void ViewProperties::convertAdditionalInfo() { - QStringList visibleRoles; + QStringList visibleRoles = m_node->visibleRoles(); const QStringList additionalInfo = m_node->additionalInfo(); if (!additionalInfo.isEmpty()) { @@ -438,7 +438,7 @@ void ViewProperties::convertAdditionalInfo() // to Icons_size, Details_date, ... where the suffix just represents // the internal role. One special-case must be handled: "LinkDestination" // has been used for "destination". - visibleRoles.reserve(additionalInfo.count()); + visibleRoles.reserve(visibleRoles.count() + additionalInfo.count()); for (const QString& info : additionalInfo) { QString visibleRole = info; int index = visibleRole.indexOf('_'); @@ -450,7 +450,9 @@ void ViewProperties::convertAdditionalInfo() visibleRole[index] = visibleRole[index].toLower(); } } - visibleRoles.append(visibleRole); + if (!visibleRoles.contains(visibleRole)) { + visibleRoles.append(visibleRole); + } } }