         request.data = rect;
         
         // forward request 
-        if (useSWFBridge())
+        if (forwardRequest && useSWFBridge())
         { 
-        var bridge:IEventDispatcher = swfBridgeGroup.parentBridge;
+            var bridge:IEventDispatcher = swfBridgeGroup.parentBridge;
             request.requestor = bridge;
             bridge.dispatchEvent(request);
         }

        }
        
        // if we are not the sandbox root, dispatch the message to the sandbox root.
        if (sm != sbRoot)
        {
            var forwardRequest:Boolean = false;

            // convert exclude component into a rectangle and forward to parent bridge.
            if (request.type == SWFBridgeRequest.CREATE_MODAL_WINDOW_REQUEST ||
                request.type == SWFBridgeRequest.SHOW_MODAL_WINDOW_REQUEST)
            {
                var exclude:ISWFLoader = sm.swfBridgeGroup.getChildBridgeProvider(request.requestor) 
                                                 as ISWFLoader;
                var excludeRect:Rectangle = ISWFLoader(exclude).getVisibleApplicationRect();
                request.data.excludeRect = excludeRect;
                forwardRequest = true;
            }
            else if (request.type == SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST)
                forwardRequest = true;
                
            if (forwardRequest)
            {
                bridge = sm.swfBridgeGroup.parentBridge;
                request.requestor = bridge;
         
                // The HIDE request does not need to be processed by each
                // application, so dispatch it directly to the sandbox root.       
                if (request.type == SWFBridgeRequest.HIDE_MODAL_WINDOW_REQUEST)
                    sbRoot.dispatchEvent(request);
                else 
                    bridge.dispatchEvent(request);
                return false;
            }
        }

        // skip aftering sending the message over a bridge.

	 */
	public function removeChildBridge(bridge:IEventDispatcher):void
	{
        var fm:IFocusManager = IFocusManager(bridgeToFocusManager[bridge]);
        fm.removeSWFBridge(bridge);
        swfBridgeGroup.removeChildBridge(bridge);

        delete bridgeToFocusManager[bridge];
        removeChildBridgeListeners(bridge);
	}

