diff options
| author | Méven Car <[email protected]> | 2024-01-06 11:40:57 +0100 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2024-01-13 09:07:33 +0000 |
| commit | 9691afbc507ee480d4d129a6fff90b6b926aed62 (patch) | |
| tree | 3296e655acf67f6816aeef0b312c93f2199c1fc2 /src/kitemviews/kfileitemmodel.cpp | |
| parent | c8dffc433caacc9955b3054f6255ae50176e5533 (diff) | |
Add setting also hide application/x-trash files when hiding hidden files
BUG: 475805
Diffstat (limited to 'src/kitemviews/kfileitemmodel.cpp')
| -rw-r--r-- | src/kitemviews/kfileitemmodel.cpp | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index 4463b37ae..5f4f0bb9a 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -105,7 +105,7 @@ KFileItemModel::KFileItemModel(QObject *parent) connect(GeneralSettings::self(), &GeneralSettings::sortingChoiceChanged, this, &KFileItemModel::slotSortingChoiceChanged); - setShowTrashMime(m_dirLister->showHiddenFiles()); + setShowTrashMime(m_dirLister->showHiddenFiles() || !GeneralSettings::hideXTrashFile()); } KFileItemModel::~KFileItemModel() @@ -239,25 +239,18 @@ bool KFileItemModel::sortHiddenLast() const return m_sortHiddenLast; } -void KFileItemModel::setShowTrashMime(bool show) +void KFileItemModel::setShowTrashMime(bool showTrashMime) { const auto trashMime = QStringLiteral("application/x-trash"); QStringList excludeFilter = m_filter.excludeMimeTypes(); - bool wasShown = !excludeFilter.contains(trashMime); - if (show) { - if (!wasShown) { - excludeFilter.removeAll(trashMime); - } - } else { - if (wasShown) { - excludeFilter.append(trashMime); - } + if (showTrashMime) { + excludeFilter.removeAll(trashMime); + } else if (!excludeFilter.contains(trashMime)) { + excludeFilter.append(trashMime); } - if (wasShown != show) { - setExcludeMimeTypeFilter(excludeFilter); - } + setExcludeMimeTypeFilter(excludeFilter); } void KFileItemModel::scheduleResortAllItems() @@ -270,7 +263,7 @@ void KFileItemModel::scheduleResortAllItems() void KFileItemModel::setShowHiddenFiles(bool show) { m_dirLister->setShowHiddenFiles(show); - setShowTrashMime(show); + setShowTrashMime(show || !GeneralSettings::hideXTrashFile()); m_dirLister->emitChanges(); if (show) { dispatchPendingItemsToInsert(); |
