     //--------------------------------------------------------------------------
 
     /**
-     *  @private
-     */
-    override protected function invalidateParentSizeAndDisplayList():void
+     *  @private 
+     *  Applications set estimated sizes for their children
+     */  
+    override public function setActualSize(w:Number, h:Number):void
+    {
+        if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_4_5)
+            setEstimatedSize(w, h, false);
+        
+        super.setActualSize(w, h);
+    }
+    
+    /**
+     *  @private
+     */
+    override protected function invalidateParentSizeAndDisplayList(estimatedSizesChanged:Boolean = false):void
     {
         if (!includeInLayout)
             return;

        {
            invalidateProperties();
            invalidateSize();
        }

        setActualSize(w, h);

import flash.utils.setInterval;

import mx.core.FlexGlobals;
import mx.core.FlexVersion;
import mx.core.IInvalidating;
import mx.core.InteractionMode;
import mx.core.Singleton;
