Change viewport adjustments in BrowseDialog

BrowseDialog previously set the range of visible files so that the
selected file was always at the bottom of it, unless that was
impossible.

Now, the viewport adjusts to the selection as follows:
* When entering the selector with a file hint, the file matching that
  hint is centered in the dialog if possible;
* When going to the parent directory, the previous one is centered in
  the dialog if possible;
* When moving up and down single files, or pages of them, the viewport
  is moved up if the new selection is before its second quarter, or
  is moved down if the new selection is beyond its third quarter, if
  possible.

It is not possible to move the viewport for the above adjustments if
it has reached the top or bottom of the entire list, or the entire
list fits in one page.