rem:   /* if(QxClient.isGecko() && vDispatchTarget && !vDispatchTarget.isSelectable() && !vDispatchTarget.isFocusable()) { vDomEvent.preventDefault(); }; */     
context: proto._onmouseevent_post = function(vDomEvent, vType, vDomTarget){  try  {    var vEventObject, vDispatchTarget, vTarget, vOriginalTarget, vRelatedTarget;    // Check for capturing, if enabled the target is the captured widget.    vDispatchTarget = this.getCaptureWidget();    // Event Target Object    vOriginalTarget = QxEventManager.getOriginalTargetObject(vDomTarget);    // If no capturing is active search for a valid target object    if (!QxUtil.isValidObject(vDispatchTarget))    {      // Get Target Object      vDispatchTarget = vTarget = QxEventManager.getTargetObject(null, vOriginalTarget);    }    else    {      vTarget = QxEventManager.getTargetObject(null, vOriginalTarget);    };    if (!vTarget) {      return false;    };    switch(vType)    {      case QxConst.EVENT_TYPE_CONTEXTMENU:        if (!this.getAllowClientContextMenu()) {          QxEventManager.stopDomEvent(vDomEvent);        };        break;      case QxConst.EVENT_TYPE_MOUSEDOWN:        QxFocusManager.mouseFocus = true;        var vRoot = vTarget.getFocusRoot();        if (vRoot)        {          this.setFocusRoot(vRoot);          vRoot.setActiveChild(vTarget);          vRoot.setFocusedChild(vTarget.isFocusable() ? vTarget : vRoot);        };        // the more intelli method, ignore blur after mousedown event        this._ignoreBlur = true;        break;    };    // Check if is seeable (this is really needed for Opera as of 8.5)    if ((vTarget && !vTarget.isSeeable()) || (vDispatchTarget && !vDispatchTarget.isSeeable())) {      return false;    };    var vDomEventTarget = vTarget.getElement();    // Find related target object    switch(vType)    {      case QxConst.EVENT_TYPE_MOUSEOVER:      case QxConst.EVENT_TYPE_MOUSEOUT:        vRelatedTarget = QxEventManager.getRelatedTargetObjectFromEvent(vDomEvent);        // Ignore events where the related target and        // the real target are equal - from our sight        if (vRelatedTarget == vTarget) {          return;        };    };    try    {      // Create Mouse Event Object      vEventObject = new QxMouseEvent(vType, vDomEvent, vDomTarget, vTarget, vOriginalTarget, vRelatedTarget);    }    catch(ex)    {      return this.error("Failed to create mouse event: " + ex);    };    // Store last Event in MouseEvent Constructor    // Needed for Tooltips, ...    QxMouseEvent._storeEventState(vEventObject);    try    {      // Dispatch Event through target (eventtarget-)object      var vReturnValue = vDispatchTarget ? vDispatchTarget.dispatchEvent(vEventObject) : true;    }    catch(ex)    {      return this.error("Failed to dispatch mouse event: " + ex);    };    // Handle Special Post Events    switch(vType)    {      case QxConst.EVENT_TYPE_MOUSEDOWN:        if (typeof QxPopupManager !== QxConst.TYPEOF_UNDEFINED) {          QxPopupManager.update(vTarget);        };        if (typeof QxMenuManager !== QxConst.TYPEOF_UNDEFINED) {          QxMenuManager.update(vTarget);        };        break;      case QxConst.EVENT_TYPE_MOUSEOVER:        if (typeof QxToolTipManager !== QxConst.TYPEOF_UNDEFINED) {          QxToolTipManager.handleMouseOver(vEventObject);        };        break;      case QxConst.EVENT_TYPE_MOUSEOUT:        if (typeof QxToolTipManager !== QxConst.TYPEOF_UNDEFINED) {          QxToolTipManager.handleMouseOut(vEventObject);        };        break;      case QxConst.EVENT_TYPE_MOUSEWHEEL:        // priority for the real target not the (eventually captured) dispatch target        vReturnValue ? this._onmousewheel(vOriginalTarget || vDispatchTarget, vEventObject) : QxEventManager.stopDomEvent(vDomEvent);        break;    };    // Send Event Object to Drag&Drop Manager    if (typeof QxDragAndDropManager  !== QxConst.TYPEOF_UNDEFINED && vTarget) {      QxDragAndDropManager.handleMouseEvent(vEventObject);    };    // Prevent gecko default handling    // Is this really needed anymore?    /*    if(QxClient.isGecko() && vDispatchTarget && !vDispatchTarget.isSelectable() && !vDispatchTarget.isFocusable()) {      vDomEvent.preventDefault();    };    */    // Dispose Event Object    vEventObject.dispose();    vEventObject = null;    // Flush Queues    QxWidget.flushGlobalQueues();  }  catch(ex)  {    return this.error("Failed to handle mouse event: " + ex);  };};
meta: 1005	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1005/344edeab80d73f54133a229f2f7fb6b58aa27280/QxEventManager.js/clean/qooxdoo/source/script/managers/QxEventManager.js