     protected function beginViewChange():void
     {
         viewChanging = true;
-        
-        if (parentNavigator)
-        {
-            explicitMouseChildren = parentNavigator.mouseChildren;
-            explicitMouseEnabled = parentNavigator.mouseEnabled;
-            parentNavigator.mouseEnabled = false;
-            parentNavigator.mouseChildren = false;
-        }
-        else
-        {
-            explicitMouseChildren = mouseChildren;
-            explicitMouseEnabled = mouseEnabled;
-            mouseEnabled = false;
-            mouseChildren = false;
-        }
+
+        // TODO (chiedozi): Figure out a pattern for disabling parent navigator as well
+        explicitMouseChildren = mouseChildren;
+        explicitMouseEnabled = mouseEnabled;
+        mouseEnabled = false;
+        mouseChildren = false;
     }
     
     /**

            (!landscapeOrientation && view.hasState("portrait")))
        {
            view.setCurrentState(view.getCurrentViewState(landscapeOrientation), false);
            
            // Force a validation properties pass on the view so that all state
            // specific properties are enabled
            view.validateProperties();
        }
        
        view.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, view_propertyChangeHandler);
        
        // TODO (chiedozi): Need to think about how to handle the multiple
        // pop use case.  The wrong view will get the return value.  Is that okay?

                    // changes when navigator isnt active
                    var view:View = navigationStack.topView.instance;
                    if (!view)
                    {
                        view = createViewInstance(navigationStack.topView);
                        view.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, view_propertyChangeHandler);
                    }
                    
                    view.active = true;
                    
