            case HorizontalAlign.CONTENT_JUSTIFY: 
                return contentWidth;
        }
-       return elt.getPreferredWidth();
+       return elt.getPreferredBoundsWidth();
     }
     
     /**

        var maxVisibleY:Number = minVisibleY + layoutTarget.height;
        
        // TBD: don't assume typicalLayoutElement is set, use 1st row...
        var typicalWidth:Number = typicalLayoutElement.getPreferredWidth();
        var typicalHeight:Number = typicalLayoutElement.getPreferredHeight();
        llv.length = layoutTarget.numLayoutElements;        
        llv.minorSize = Math.max(llv.minorSize, typicalWidth);
        llv.defaultMajorSize = typicalHeight;

                continue;
                
            // Set the layout element's position
            var x:Number = (contentWidth - layoutElement.getLayoutBoundsWidth()) * hAlign;
            layoutElement.setLayoutBoundsPosition(x, y);
                            
            // Update maxX,Y, first,lastVisibleIndex, and y
            var dx:Number = layoutElement.getLayoutBoundsWidth();
            var dy:Number = layoutElement.getLayoutBoundsHeight();
            
            maxX = Math.max(maxX, x + dx);
            maxY = Math.max(maxY, y + dy);
