                 else
                 {
                     // Wait until the view validates before activating it
-                    activeView.addEventListener(FlexEvent.UPDATE_COMPLETE, completeViewCommitProcess);
+                    activeView.addEventListener(FlexEvent.UPDATE_COMPLETE, view_updateCompleteHandler);
                 }
             }
             

            // Wait a frame before sending the complete event so that the player 
            // has the chance to render the last frame before any custom actionscript 
            // is run in response to a VIEW_ACTIVATE event.
            addEventListener(Event.ENTER_FRAME, completeViewCommitProcess);
        }
    }

    /**
     *  @private
     *  Activates the current view.  Called on the frame following the
     *  navigator commit or when a TabbedViewNavigator activates a new
     *  view.
     */ 
    private function completeViewCommitProcess(event:Event = null):void
    {
        if (event)
            removeEventListener(Event.ENTER_FRAME, completeViewCommitProcess);
        
        // At this point, currentViewDescriptor points to the new view.
        // The navigator needs to listen for property change events on the
        // view so that it can be notified when the template properties

{
import flash.display.Stage;
import flash.events.Event;

import mx.core.IVisualElement;
import mx.core.UIComponent;
import mx.core.mx_internal;
import mx.effects.IEffect;
import mx.effects.Parallel;
import mx.events.EffectEvent;
import mx.events.FlexEvent;
import mx.events.PropertyChangeEvent;
import mx.managers.LayoutManager;

import spark.components.supportClasses.NavigationStack;
import spark.components.supportClasses.ViewDescriptor;
