From 92b29f6043c37e94d39e3f47cc52083e6ea4fe61 Mon Sep 17 00:00:00 2001 From: Sven Strickroth Date: Sun, 5 Jul 2015 22:32:26 +0200 Subject: [PATCH] Reset all selected rows when navigating through selection history Signed-off-by: Sven Strickroth --- src/TortoiseProc/LogDlg.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/TortoiseProc/LogDlg.cpp b/src/TortoiseProc/LogDlg.cpp index bb81ffb17..903030116 100644 --- a/src/TortoiseProc/LogDlg.cpp +++ b/src/TortoiseProc/LogDlg.cpp @@ -1069,7 +1069,14 @@ void CLogDlg::GoBackForward(bool select, bool bForward) if (select) { m_LogList.m_highlight.Empty(); - m_LogList.SetItemState(m_LogList.GetSelectionMark(), 0, LVIS_SELECTED); + m_LogList.SetItemState(m_LogList.GetSelectionMark(), 0, LVIS_SELECTED | LVIS_FOCUSED); + POSITION pos = m_LogList.GetFirstSelectedItemPosition(); + while (pos) + { + int index = m_LogList.GetNextSelectedItem(pos); + if (index >= 0) + m_LogList.SetItemState(index, 0, LVIS_SELECTED); + } m_bNavigatingWithSelect = true; m_LogList.SetItemState(i, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED); m_LogList.SetSelectionMark(i); -- 2.11.4.GIT