From 5305a58a51476c31ff626316325a30d573dc561f Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Tue, 20 Sep 2016 22:01:31 +0300 Subject: [PATCH] TreeView: Set current index by selection ... on KeyPress event and others. This fixes e.g. deleting a watch expression by pressing the Delete key. Change-Id: Ie0eabf20fb4aeee8349d0282aa4378835d07bc43 Reviewed-by: Christian Stenger Reviewed-by: hjk --- src/libs/utils/basetreeview.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libs/utils/basetreeview.cpp b/src/libs/utils/basetreeview.cpp index 792ea68641f..8522934d354 100644 --- a/src/libs/utils/basetreeview.cpp +++ b/src/libs/utils/basetreeview.cpp @@ -417,6 +417,7 @@ void BaseTreeView::setSettings(QSettings *settings, const QByteArray &key) ItemViewEvent::ItemViewEvent(QEvent *ev, QAbstractItemView *view) : m_event(ev), m_view(view) { + QItemSelectionModel *selection = view->selectionModel(); switch (ev->type()) { case QEvent::MouseButtonPress: case QEvent::MouseButtonRelease: @@ -435,10 +436,10 @@ ItemViewEvent::ItemViewEvent(QEvent *ev, QAbstractItemView *view) m_index = view->indexAt(m_pos); break; default: + m_index = selection->currentIndex(); break; } - QItemSelectionModel *selection = view->selectionModel(); m_selectedRows = selection->selectedRows(); if (m_selectedRows.isEmpty()) { QModelIndex current = selection->currentIndex();