X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/d828d3a8b443b4c40e31fc72bc8d152e18737e1c..c12946ee2ec8dbbb8645ca5763584574458a0a6c:/src/views/viewproperties.cpp diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp index 7e589019a..5dbdd938e 100644 --- a/src/views/viewproperties.cpp +++ b/src/views/viewproperties.cpp @@ -531,9 +531,27 @@ void ViewProperties::save() const auto metaDataKey = QStringLiteral("kde.fm.viewproperties#1"); const auto items = m_node->items(); - const bool allDefault = std::all_of(items.cbegin(), items.cend(), [this](const KConfigSkeletonItem *item) { - return item->name() == "Timestamp" || (item->name() == "Version" && m_node->version() == CurrentViewPropertiesVersion) || item->isDefault(); - }); + const auto defaultConfig = defaultProperties(); + bool allDefault = true; + for (const auto item : items) { + if (item->name() == "Timestamp") { + continue; + } + if (item->name() == "Version") { + if (m_node->version() != CurrentViewPropertiesVersion) { + allDefault = false; + break; + } else { + continue; + } + } + auto defaultItem = defaultConfig->findItem(item->name()); + if (!defaultItem || defaultItem->property() != item->property()) { + allDefault = false; + break; + } + } + if (allDefault) { if (metaData.hasAttribute(metaDataKey)) { qCDebug(DolphinDebug) << "clearing extended attributes for " << m_filePath;