     protected function endHandler(event:AnimationEvent):void
     {
         dispatchEvent(event);
-        finishEffect();
-        if (affectsConstraints)
+        if (affectsConstraints || adjustConstraints)
             reenableConstraints();
         if (autoRemoveTarget)
             removeDisappearingTarget();
+        if (disableLayout)
+            setupParentLayout(true);
+        finishEffect();
     }
 
     /**

            
        isStyleMap = new Array(propertyValuesList.length);
        
        if (affectsConstraints)
            disableConstraints();
            
        // These two temporary arrays will hold the values passed into the
        // Animation to be interpolated between during the animation. The order

     */
    protected var autoRemoveTarget:Boolean = false;
        
    public var adjustConstraints:Boolean;    

    public var disableLayout:Boolean;
    
    private var _easer:IEaser;    
    public function set easer(value:IEaser):void
