             newTextDisplayProperties = BitFlagUtil.update(
                 uint(newTextDisplayProperties), MAX_CHARS_PROPERTY_FLAG, true);
         }
-
-        if (textDisplayProperties.maxHeight !== undefined && richEditableText)
-        {
-            richEditableText.maxHeight = textDisplayProperties.maxHeight;
-            newTextDisplayProperties = BitFlagUtil.update(
-                uint(newTextDisplayProperties), MAX_HEIGHT_PROPERTY_FLAG, true);
-        }
-        
-        if (textDisplayProperties.maxWidth !== undefined && richEditableText)
-        {
-            richEditableText.maxWidth = textDisplayProperties.maxWidth;
+        
+        if (textDisplayProperties.maxWidth !== undefined)
+        {
+            if (richEditableText)
+                richEditableText.maxWidth = textDisplayProperties.maxWidth;
+            else
+                super.maxWidth = textDisplayProperties.maxWidth;
             newTextDisplayProperties = BitFlagUtil.update(
                 uint(newTextDisplayProperties), MAX_WIDTH_PROPERTY_FLAG, true);
         }

        }

        if (BitFlagUtil.isSet(uint(textDisplayProperties), 
            MAX_HEIGHT_PROPERTY_FLAG) && richEditableText)
        {
            newTextDisplayProperties.maxHeight = richEditableText.maxHeight;
        }

        if (BitFlagUtil.isSet(uint(textDisplayProperties), 
                              MAX_WIDTH_PROPERTY_FLAG) && richEditableText)
        {
            newTextDisplayProperties.maxWidth = richEditableText.maxWidth;
        }

        if (BitFlagUtil.isSet(uint(textDisplayProperties), 

    /**
     *  @private
     */
    private static const MAX_WIDTH_PROPERTY_FLAG:uint = 1 << 7;
    
    /**
