const bool categorized = m_storedCategorizedSorting && supportsCategorizedSorting();
if (categorized != m_proxyModel->isCategorizedModel()) {
m_proxyModel->setCategorizedModel(categorized);
- m_proxyModel->sort(m_proxyModel->sortColumn(), m_proxyModel->sortOrder());
emit categorizedSortingChanged();
}
m_storedCategorizedSorting = categorized;
m_proxyModel->setCategorizedModel(categorized);
- m_proxyModel->sort(m_proxyModel->sortColumn(), m_proxyModel->sortOrder());
emit categorizedSortingChanged();
}
const bool categorized = m_storedCategorizedSorting && supportsCategorizedSorting();
if (categorized != m_proxyModel->isCategorizedModel()) {
m_proxyModel->setCategorizedModel(categorized);
- m_proxyModel->sort(m_proxyModel->sortColumn(), m_proxyModel->sortOrder());
emit categorizedSortingChanged();
}
{
if ((listView->viewMode() == KCategorizedView::IconMode) && proxyModel &&
categoryDrawer && proxyModel->isCategorizedModel() &&
- (((modelSortRole != proxyModel->sortRole()) ||
+ ((forceItemReload ||
+ (modelSortRole != proxyModel->sortRole()) ||
(modelSortColumn != proxyModel->sortColumn()) ||
(modelSortOrder != proxyModel->sortOrder()) ||
- (modelCategorized != proxyModel->isCategorizedModel())) || forceItemReload))
+ (modelCategorized != proxyModel->isCategorizedModel()))))
{
// Force the view to update all elements
listView->rowsInsertedArtifficial(QModelIndex(), 0, proxyModel->rowCount() - 1);
- modelSortRole = proxyModel->sortRole();
- modelSortColumn = proxyModel->sortColumn();
- modelCategorized = proxyModel->isCategorizedModel();
- modelSortOrder = proxyModel->sortOrder();
+ if (!forceItemReload)
+ {
+ modelSortRole = proxyModel->sortRole();
+ modelSortColumn = proxyModel->sortColumn();
+ modelSortOrder = proxyModel->sortOrder();
+ modelCategorized = proxyModel->isCategorizedModel();
+ }
}
else if ((listView->viewMode() == KCategorizedView::IconMode) && proxyModel &&
categoryDrawer && proxyModel->isCategorizedModel())
{
d->modelSortRole = d->proxyModel->sortRole();
d->modelSortColumn = d->proxyModel->sortColumn();
- d->modelCategorized = true;
d->modelSortOrder = d->proxyModel->sortOrder();
+ d->modelCategorized = d->proxyModel->isCategorizedModel();
QObject::connect(d->proxyModel,
SIGNAL(layoutChanged()),
if (d->proxyModel->rowCount())
{
- rowsInsertedArtifficial(QModelIndex(), 0, d->proxyModel->rowCount() - 1);
+ d->layoutChanged(true);
}
}
else
{
if (d->proxyModel)
{
- rowsInsertedArtifficial(QModelIndex(), 0, d->proxyModel->rowCount() - 1);
+ if (d->proxyModel->rowCount())
+ {
+ d->layoutChanged(true);
+ }
}
}
else