             {
                 _measuredTextSize.x = textWidth + textIndent + TEXT_WIDTH_PADDING
                 _measuredTextSize.y = textHeight + TEXT_HEIGHT_PADDING;
-                
-                return _measuredTextSize;
             }
-            
-            // when scaling, remove/add to stage for consistent measurement
-            var originalParent:DisplayObjectContainer = parent;
-            var index:int = parent.getChildIndex(this);
-            
-            // remove from display list
-            if (originalParent is UIComponent)
-                UIComponent(originalParent).$removeChild(this);
-            else
-                originalParent.removeChild(this);
-            
-            _measuredTextSize.x = textWidth + textIndent + TEXT_WIDTH_PADDING
-            _measuredTextSize.y = textHeight + TEXT_HEIGHT_PADDING;
-            
-            // add to display list
-            if (originalParent is UIComponent)
-                UIComponent(originalParent).$addChildAt(this, index);
-            else
-                originalParent.addChildAt(this, index);
-            
-            // If we use device fonts, then the unscaled sizes are
-            // textWidth * scaleX / scaleY
-            // textHeight * scaleX / scaleY 
-            if (m.a != m.d)
-            {
-                var scaleFactor:Number = (m.a / m.d);
-                
-                // textIndent and gutter are also scaled
-                _measuredTextSize.x = Math.abs(_measuredTextSize.x * scaleFactor);
-                _measuredTextSize.y = Math.abs(_measuredTextSize.y * scaleFactor);
-            }
-            
-            invalidateTextSizeFlag = false;
+			else
+			{
+	            // when scaling, remove/add to stage for consistent measurement
+	            var originalParent:DisplayObjectContainer = parent;
+	            var index:int = parent.getChildIndex(this);
+	            
+	            // remove from display list
+	            if (originalParent is UIComponent)
+	                UIComponent(originalParent).$removeChild(this);
+	            else
+	                originalParent.removeChild(this);
+	            
+	            _measuredTextSize.x = textWidth + textIndent + TEXT_WIDTH_PADDING
+	            _measuredTextSize.y = textHeight + TEXT_HEIGHT_PADDING;
+	            
+	            // add to display list
+	            if (originalParent is UIComponent)
+	                UIComponent(originalParent).$addChildAt(this, index);
+	            else
+	                originalParent.addChildAt(this, index);
+	            
+	            // If we use device fonts, then the unscaled sizes are
+	            // textWidth * scaleX / scaleY
+	            // textHeight * scaleX / scaleY 
+	            if (m.a != m.d)
+	            {
+	                var scaleFactor:Number = (m.a / m.d);
+	                
+	                // textIndent and gutter are also scaled
+	                _measuredTextSize.x = Math.abs(_measuredTextSize.x * scaleFactor);
+	                _measuredTextSize.y = Math.abs(_measuredTextSize.y * scaleFactor);
+	            }
+			}
+			
+			invalidateTextSizeFlag = false;
         }
         
         return _measuredTextSize;

    // Name of the style to use for determining the text color
    mx_internal var colorName:String = "color";
    
    private static var supportedStyles:String = "textAlign fontFamily fontWeight fontStyle color fontSize textDecoration textIndent leading letterSpacing"
    
    private var invalidateStyleFlag:Boolean = true;

     */
    public function getLayoutBoundsWidth(postLayoutTransform:Boolean=true):Number
    {
		if (useTightTextBounds)
		{
			// return the text field width without the left and right gutters
			return width - StyleableTextField.TEXT_WIDTH_PADDING;
		}
		else
		{
			return width;
		}
    }
    
    /**
