columnview: Handle focus movement properly
authorBenjamin Otte <otte@redhat.com>
Thu, 23 Mar 2023 03:37:29 +0000 (04:37 +0100)
committerBenjamin Otte <otte@redhat.com>
Thu, 23 Mar 2023 03:51:50 +0000 (04:51 +0100)
commit30d4629043f54b6454cd1b4f5723179bc20a0b0e
treea0e865459eb5d0e96e33eba7bb87319b90e6b387
parent78e72ad1deacd152885c60205d620557138e5eaf
columnview: Handle focus movement properly

- grab_focus() on a row (happens with scroll_to()) keeps the focus
  column intact if possible.
- <Tab> and <Shift-Tab> move through the cells in order, and move
  to the next row when at the end.
- <Up> an <Down> move to the next/prev row, keeping the same column
  focused.
- <Left> and <Right> move to the prev/next cell, if one is available.
  If not, they stay where they are.
gtk/gtkcolumnviewrowwidget.c