From 2e665e1b513b3f7c082bedc8faaf47bee8008c73 Mon Sep 17 00:00:00 2001 From: Pan Zhang Date: Sat, 23 May 2026 18:25:19 +0800 Subject: viewproperties: respect saved properties for special folders with global view props enabled When "Use common display style for all folders" is enabled, the useDefaultSettings condition was always true because useGlobalViewProps was the first term in the OR chain. This caused special folders controlled by useSearchView, useTrashView, and useRecentDocumentsView to reset to their default view on every load, overriding any user customization. Restrict the unconditional default-apply to non-special folders only. For special folders, the existing timestamp-based check handles the logic correctly, and the fallback in the else branch still applies defaults when no saved properties exist (first visit). BUG: 520089 --- src/views/viewproperties.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/views') diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp index 3d33a805b..c5e53586c 100644 --- a/src/views/viewproperties.cpp +++ b/src/views/viewproperties.cpp @@ -177,11 +177,15 @@ ViewProperties::ViewProperties(const QUrl &url) auto propsOpt = loadProperties(m_filePath); - bool useDefaultSettings = useGlobalViewProps || + bool useDefaultSettings = // If the props timestamp is too old, // use default values instead. (propsOpt && (!useGlobalViewProps || useSearchView || useTrashView || useRecentDocumentsView || useDownloadsView) - && propsOpt->timestamp() < settings->viewPropsTimestamp()); + && propsOpt->timestamp() < settings->viewPropsTimestamp()) + // When global view props is on and this is a special folder (search, trash, + // recents/timeline, downloads), only apply defaults on the first visit. + // On subsequent visits the user's saved properties should be preserved. + || (useGlobalViewProps && !(useSearchView || useTrashView || useRecentDocumentsView || useDownloadsView)); if (propsOpt) { m_node = propsOpt; -- cgit v1.3.1