From 2854a69fcad54d394ebec504af4995dcb5e18ac4 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Thu, 26 Apr 2012 21:27:59 +0200 Subject: [PATCH] Reset to ascending sort order when changing the column When changing the sort-column the sort order should always be reset to 'ascending' to by consistent with the QListView behavior. BUG: 298830 FIXED-IN: 4.9.0 --- src/kitemviews/private/kitemlistheaderwidget.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/kitemviews/private/kitemlistheaderwidget.cpp b/src/kitemviews/private/kitemlistheaderwidget.cpp index 576516f25..0f1f20b82 100644 --- a/src/kitemviews/private/kitemlistheaderwidget.cpp +++ b/src/kitemviews/private/kitemlistheaderwidget.cpp @@ -228,11 +228,16 @@ void KItemListHeaderWidget::mouseReleaseEvent(QGraphicsSceneMouseEvent* event) m_model->setSortOrder(current); emit sortOrderChanged(current, previous); } else { - // Change the sort role + // Change the sort role and reset to the ascending order const QByteArray previous = m_model->sortRole(); const QByteArray current = m_columns[m_pressedRoleIndex]; m_model->setSortRole(current); emit sortRoleChanged(current, previous); + + if (m_model->sortOrder() == Qt::DescendingOrder) { + m_model->setSortOrder(Qt::AscendingOrder); + emit sortOrderChanged(Qt::AscendingOrder, Qt::DescendingOrder); + } } break; } -- 2.47.3