      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */ 
-    protected function systemManager_mouseMoveHandler(event:MouseEvent):void
+    protected function systemManager_mouseMoveHandler(event:Event):void
     {
         var target:DisplayObject = event.target as DisplayObject;
         
         // if the mouse is down, wait until it's released
         // TODO (rfrishbe): Need to do something when they mouse up in 
-        // this case if they mouseup outside of the button/dropdown.
-        if (event.buttonDown)
+        // this case if they mouseup outside of the openButton/dropdown.
+        if ((event is MouseEvent && MouseEvent(event).buttonDown) ||
+            (event is SandboxMouseEvent && SandboxMouseEvent(event).buttonDown))
             return;
         
         if (target)
         {
-            // check if the target is the button or contained within the button
-            if (button.contains(target))
+            // check if the target is the openButton or contained within the openButton
+            if (openButton.contains(target))
                 return;
             
             // check if the target is the dropdown or contained within the dropdown

     *  @playerversion AIR 1.5
     *  @productversion Flex 4
     */ 
    protected function button_rollOverHandler(event:MouseEvent):void
    {
        if (rollOverOpenDelay == 0)
            openDropDown();
        else
        {
            button.addEventListener(MouseEvent.ROLL_OUT, button_rollOutHandler);
            rollOverOpenDelayTimer = new Timer(rollOverOpenDelay, 1);
            rollOverOpenDelayTimer.addEventListener(TimerEvent.TIMER_COMPLETE, rollOverDelay_timerCompleteHandler);
            rollOverOpenDelayTimer.start();

    private function addCloseTriggers():void
    {
        // TODO (jszeto) Change these to be marshall plan compliant
        if (openButton)
        {
            if (isNaN(rollOverOpenDelay))
            {
                openButton.systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_DOWN, systemManager_mouseDownHandler);
    			openButton.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, systemManager_mouseDownHandler);
    			openButton.systemManager.getSandboxRoot().addEventListener(Event.RESIZE, systemManager_resizeHandler, false, 0, true);
            }
            else
            {
                openButton.systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_MOVE, systemManager_mouseMoveHandler);
                openButton.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, systemManager_mouseMoveHandler);
                openButton.systemManager.getSandboxRoot().addEventListener(Event.RESIZE, systemManager_resizeHandler, false, 0, true);
            }
        }
    }
