status: ensure items are visible when staging
We restore the scrollbar positions when refreshing, which means that
there are situations where the current item can scroll out of view.
This happens when many files are modified, and files near the bottom of
the viewport are staged.
Add a signal that gets triggered when the diff text actually changes.
This same event is also a point where the GUI can safely make the
current item visible, as we know that that the refresh was triggered by
something that changed the diff state.
Closes #870
Reported-by: Noel Grandin <noelgrandin@gmail.com>
Signed-off-by: David Aguilar <davvid@gmail.com>