         
         if (modal)
         {
-            // create a modal window shield which blocks input and sets up mouseDownOutside logic
+			// handles accessibility for modal popUps.
+			if(Capabilities.hasAccessibility && Accessibility.active)
+				window.addEventListener(FlexEvent.CREATION_COMPLETE, modalPopUpCreationCompleteHandler, false, 0, true);
+
+			// create a modal window shield which blocks input and sets up mouseDownOutside logic
             createModalWindow(parent, o, children, visibleFlag, smp, smp.getSandboxRoot());
         }
         else

package mx.managers
{

import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.display.Graphics;

import flash.events.MouseEvent;
import flash.geom.Point;
import flash.geom.Rectangle;
import flash.system.Capabilities;

import mx.automation.IAutomationObject;
import mx.core.FlexGlobals;
