nscoord vbarwidth, hbarheight; scrollFrame->GetScrollbarSizes(aBoxLayoutState.GetPresContext(), &vbarwidth, &hbarheight); aSize.width += vbarwidth;
nsMargin scrollbars = scrollFrame->GetDesiredScrollbarSizes(&aBoxLayoutState); aSize.width += scrollbars.left + scrollbars.right;
nsListboxScrollPortFrame::GetPrefSize(nsBoxLayoutState& aBoxLayoutState, nsSize& aSize){    nsIBox* child = nsnull;  GetChildBox(&child);   nsresult rv = child->GetPrefSize(aBoxLayoutState, aSize);  nsListBoxBodyFrame* outer = NS_STATIC_CAST(nsListBoxBodyFrame*,child);  PRInt32 size = outer->GetFixedRowSize();  if (size > -1)    aSize.height = size*outer->GetRowHeightTwips();     nsCOMPtr<nsIScrollableFrame> scrollFrame(do_QueryInterface(mParent));  if (scrollFrame) {    nsIScrollableFrame::nsScrollPref scrollPref;    scrollFrame->GetScrollPreference(aBoxLayoutState.GetPresContext(), &scrollPref);    if (scrollPref == nsIScrollableFrame::Auto) {      nscoord vbarwidth, hbarheight;      scrollFrame->GetScrollbarSizes(aBoxLayoutState.GetPresContext(),                                     &vbarwidth, &hbarheight);      aSize.width += vbarwidth;    }  }  AddMargin(child, aSize);  AddBorderAndPadding(aSize);  AddInset(aSize);  nsIBox::AddCSSPrefSize(aBoxLayoutState, this, aSize);  return rv;}