mMouseLocX = 50; mMouseLocY = 50;
uiEvent->GetScreenX(&mMouseScreenX); uiEvent->GetScreenY(&mMouseScreenY); uiEvent->GetClientX(&mMouseClientX); uiEvent->GetClientY(&mMouseClientY);
XULPopupListenerImpl::MouseOver(nsIDOMEvent* aMouseEvent){  nsresult rv = NS_OK;    // make sure we're a tooltip. if not, bail.  if ( popupType != eXULPopupType_tooltip )    return NS_OK;    //XXX recognize when a popup is already up and immediately show the  //XXX tooltip for the new item if the dom element is different than  //XXX the element for which we are currently displaying the tip.  //XXX  //XXX for now, just be stupid to get things working.    // Kill off an old timer and create a new one.  if ( mTooltipTimer ) {    mTooltipTimer->Cancel();    mTooltipTimer = nsnull;  }  NS_NewTimer ( getter_AddRefs(mTooltipTimer) );  if ( mTooltipTimer ) {    nsCOMPtr<nsIDOMUIEvent> uiEvent ( do_QueryInterface(aMouseEvent) );    if ( uiEvent ) {      // stash the coordinates of the event so that we can still get back to it from within the       // timer scallback. Also stash the node that started this so we can put it into the      // document later on (if the timer ever fires).      nsCOMPtr<nsIDOMNode> eventTarget;      aMouseEvent->GetTarget(getter_AddRefs(eventTarget));      mPossibleTooltipNode = eventTarget.get();// BUG: 8598, widget and mouse coords not set for MouseOver events.//      uiEvent->GetScreenX(&mMouseLocX);//      uiEvent->GetScreenY(&mMouseLocY);      mMouseLocX = 50; mMouseLocY = 50;  // XXX until bug 8598 fixed      mTooltipTimer->Init(sTooltipCallback, this, 1000);   // one second delay    }  }  else    NS_WARNING ( "Could not create a timer for tooltip tracking" );      return NS_OK;  } // MouseOver