Make all grids in “Git synchronization” sortable
What steps will reproduce the problem?
- Have a local repo being several commits behind its origin (with multiple remote files changed) and having several not-yet-pushed commits in the default branch (again, with multiple files changed).
- Open “Git synchronization” and perform “Fetch”.
What is the expected output? What do you see instead?
What I see: At least 4 tabs contain items organized in a grid: “In Commits”, “In ChangeList”, “Out Commits”, “Ref List”. I can reorder the columns by dragging their header cells. What I expect: In order to group items (e.g. in-commits by Author, in-change files by Status, out-commits by Message having an issue ID at the beginning, etc) I expect that every grid is sortable by clicking at column header cells (with each next click in the same header reversing the order) — it's a well-established UX which can be seen in e.g. Windows Explorer's Details view. Sort column and direction should be indicated in the header cell, e.g. by an up/down arrow.
Numeric/date columns have natural ordering, text columns should be ordered lexicographically (ideally, accounting for character case and Unicode NFC/NFD as next-order difference). Enumeration columns should be sorted by some logical order of possible values; Actions column can be sorted as numeric composed of bits representing all possible actions. Graph column should be the only non-sortable one.
What version of TortoiseGit and Git are you using? On what operating system?
TortoseGit 2.4 x64; Windows 8.1 x64.
Please provide any additional information below.
Ideally, re-sorting should not clear the selection (see also #2931 (closed)) or the current item (contrary to how it works in the Commit dialog).