People: Enclose PeopleView in a BScrollView.

People uses a customizeable set of attributes, and on my install
that has a lot of old BeOS applications, the window is too tall
for the screen. So now it will be possible to scroll it.

Depends on the prior change to BScrollView to auto-update
scrollbar limits when the window size changes, as otherwise
you will not be able to scroll properly.

As you can see by the date, I've had this patch sitting around
for almost 2 years now, waiting for BScrollView layouted behavior
to be fixed...

Change-Id: Iee7a691771d3b17efb2f6aba8c5011986ad0e36b
Reviewed-on: https://review.haiku-os.org/c/894
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
This commit is contained in:
Augustin Cavalier 2017-04-20 15:46:33 -04:00 committed by waddlesplash
parent 9e7d077d1b
commit f290b76670

View File

@ -29,6 +29,7 @@
#include <NodeInfo.h>
#include <NodeMonitor.h>
#include <Path.h>
#include <ScrollView.h>
#include <String.h>
#include <TextView.h>
#include <Volume.h>
@ -107,9 +108,14 @@ PersonWindow::PersonWindow(BRect frame, const char* title,
fView = new PersonView("PeopleView", categoryAttribute, fRef);
BScrollView* scrollView = new BScrollView("PeopleScrollView", fView, 0,
false, true, B_NO_BORDER);
scrollView->SetExplicitMinSize(BSize(scrollView->MinSize().width, 0));
BLayoutBuilder::Group<>(this, B_VERTICAL, 0)
.SetInsets(0, 0, -1, 0)
.Add(menuBar)
.Add(fView);
.Add(scrollView);
fRevert->SetTarget(fView);
selectAllItem->SetTarget(fView);