         getRootMenu().dispatchEvent(menuEvent);
 
         // Activate the focus manager for that menu
-        systemManager.activate(this);
+		var awm:IActiveWindowManager = 
+			IActiveWindowManager(systemManager.getImplementation("mx.managers::IActiveWindowManager"));
+        awm.activate(this);
 
         // Position it
         if (xShow !== null && !isNaN(Number(xShow)))

import mx.events.ListEvent;
import mx.events.SandboxMouseEvent;
import mx.events.MenuEvent;
import mx.managers.IFocusManagerContainer;
import mx.managers.ISystemManager;
import mx.managers.PopUpManager;

            var pt:Point = new Point(x, y);
            pt = sbRoot.localToGlobal(pt);
    
            screen = sm.getVisibleApplicationRect();
                
            var shift:Number = pt.x + width - screen.right;
            if (shift > 0)
