[haiku-commits] Re: r36756 - haiku/trunk/src/kits/interface

  • From: Stephan Assmus <superstippi@xxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sat, 08 May 2010 22:50:24 +0200

On 2010-05-08 at 22:47:37 [+0200], Ithamar R. Adema 
<ithamar.adema@xxxxxxxxxxxxxxxx> wrote:
> Stephan Assmus wrote:
> > <snip>
> > If GetPreferredSize() looks at the content and reports different sizes, we
> > are back to the broken behavior, which the above tried to fix. In another
> > words, MinSize() and PreferredSize() need to return stable sizes, at least
> > until InvalidateLayout() has been called. I don't believe you want to call
> > InvalidateLayout() on each item operation in a BListView.
> >   
> Oops, my apologies then, I misunderstood the comment. The problem is
> that the automatic sizing of the views/windows is horribly broken with
> the previous implementation....
> 
> Is there an easy way of reproducing the problem you describe here? Also,
> is there a workaround for apps using BListView's with the new layouting API?

Maybe you see the problem that BScrollView is not calculating the minimum 
*height* of the vertical scrollbar and the minimum *width* of the horizontal 
scrollbar in the MinSize() implementation. There is an open ticket for this, 
even with a patch attached. Somehow it slipped into the back of my mind and I 
only remember now that I intended to look at this. You need to read the last 
few comments of the ticket, where it becomes clear why 
BScrollView::_ComputeFrame() is not sufficient.

Best regards,
-Stephan


Other related posts: