nsCOMPtr<nsIDOMUIEvent> uiEvent ( do_QueryInterface(anEvent) ); if (!uiEvent) {  return NS_OK;
XULPopupListenerImpl::LaunchPopup ( nsIDOMEvent* anEvent ){  // Retrieve our x and y position.  nsCOMPtr<nsIDOMUIEvent> uiEvent ( do_QueryInterface(anEvent) );  if (!uiEvent) {    //non-ui event passed in.  bad things.    return NS_OK;  }  PRInt32 xPos, yPos;  uiEvent->GetScreenX(&xPos);   uiEvent->GetScreenY(&yPos);   PRInt32 offsetX, offsetY;  uiEvent->GetClientX(&offsetX);  uiEvent->GetClientY(&offsetY);  return LaunchPopup ( mElement, xPos, yPos, offsetX, offsetY );}