From 6db55f54432937e60dd875802cc3530639c0a45d Mon Sep 17 00:00:00 2001 From: Frank Reininghaus Date: Thu, 20 Jun 2013 19:23:43 +0200 Subject: [PATCH] Some simplifications in KFileItemModelRolesUpdater This removes some things that are obsolete after the recent commits: (a) resolveNextPendingRoles() is not called any more when the preview job is running. (b) In applyResolvedRoles(), we always load the icon if it isn't known yet. This ensures that every item has an icon. REVIEW: 111012 --- src/kitemviews/kfileitemmodelrolesupdater.cpp | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/src/kitemviews/kfileitemmodelrolesupdater.cpp b/src/kitemviews/kfileitemmodelrolesupdater.cpp index bfb4e644e..294778621 100644 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@ -678,7 +678,7 @@ void KFileItemModelRolesUpdater::resolveNextSortRole() void KFileItemModelRolesUpdater::resolveNextPendingRoles() { - if (m_state != ResolvingAllRoles && m_state != PreviewJobRunning) { + if (m_state != ResolvingAllRoles) { return; } @@ -690,21 +690,15 @@ void KFileItemModelRolesUpdater::resolveNextPendingRoles() continue; } - if (m_previewShown) { - // Only determine the icon. The other roles are resolved when the preview is received. - applyResolvedRoles(item, ResolveFast); - } else { - applyResolvedRoles(item, ResolveAll); - m_finishedItems.insert(item); - m_changedItems.remove(item); - } - + applyResolvedRoles(item, ResolveAll); + m_finishedItems.insert(item); + m_changedItems.remove(item); break; } if (!m_pendingIndexes.isEmpty()) { QTimer::singleShot(0, this, SLOT(resolveNextPendingRoles())); - } else if (m_state != PreviewJobRunning) { + } else { m_state = Idle; if (m_clearPreviews) { @@ -1117,9 +1111,7 @@ bool KFileItemModelRolesUpdater::applyResolvedRoles(const KFileItem& item, Resol if (!item.isMimeTypeKnown() || !item.isFinalIconKnown()) { item.determineMimeType(); iconChanged = true; - } else if (m_state == ResolvingSortRole || m_state == PreviewJobRunning) { - // We are currently performing a fast determination of all icons - // in the visible area. + } else { const int index = m_model->index(item); if (!m_model->data(index).contains("iconName")) { iconChanged = true; -- 2.47.3