 
         if (BitFlagUtil.isSet(uint(textViewProperties), EDITABLE_PROPERTY_FLAG))
             newTextViewProperties.editable = textView.editable;
-
-        // enabled is special and is stored in the super class rather than in
-        // textViewProperties.  And if it changes, need to update the skin.
-        if (BitFlagUtil.isSet(uint(textViewProperties), ENABLED_PROPERTY_FLAG))
-        {
-            if (super.enabled != textView.enabled)
-            {
-                super.enabled = textView.enabled;
-                invalidateSkinState();
-            }
-        }
 
         if (BitFlagUtil.isSet(uint(textViewProperties), 
             HEIGHT_IN_LINES_PROPERTY_FLAG))

    //  Overridden properties: UIComponent
    //
    //--------------------------------------------------------------------------

    //----------------------------------
    //  mouseChildren
    //----------------------------------

    private var _explicitMouseChildren:Boolean = true;

    /**
     *  @private
     */
    override public function set mouseChildren(value:Boolean):void
    {
        if (enabled)
            super.mouseChildren = value;
        _explicitMouseChildren = value;
    }

    //----------------------------------
    //  mouseEnabled
    //----------------------------------

    private var _explicitMouseEnabled:Boolean = true;

    /**
     *  @private
     */
    override public function set mouseEnabled(value:Boolean):void
    {
        if (enabled)
            super.mouseEnabled = value;
        _explicitMouseEnabled = value;
    }

    //----------------------------------
    //  enabled
    //----------------------------------

    /**
     *  @private
     */
    override public function get enabled():Boolean
    {
        if (textView)
            return textView.enabled;
        
        return super.enabled;
    }

    /**
     *  @private
     */
    override public function set enabled(value:Boolean):void
    {
        if (value == enabled)
            return;

        // This deviates from the standard setter pattern because enabled
        // is a property of this component.  We don't have to store enabled in
        // textViewProperties when the textView doesn't exist.
                
        if (textView)
        {
            textView.enabled = value;
            textViewProperties = BitFlagUtil.update(
                uint(textViewProperties), ENABLED_PROPERTY_FLAG, true);
        }

        super.enabled = value;
        invalidateSkinState();

        // If enabled, reset the mouseChildren, mouseEnabled to the previously
        // set explicit value, otherwise disable mouse interaction.
        super.mouseChildren = value ? _explicitMouseChildren : false;
        super.mouseEnabled  = value ? _explicitMouseEnabled  : false; 
    }

    //----------------------------------
    //  baselinePosition

            textView.editable = textViewProperties.editable;
             newTextViewProperties = BitFlagUtil.update(
                uint(newTextViewProperties), EDITABLE_PROPERTY_FLAG, true);
        }

        if (textViewProperties.heightInLines !== undefined)
        {
