code: function (evt) {
          var type = evt.type, listeners = this.listeners[type];
          if(!listeners || listeners.length == 0) {
              // noone's listening, bail out
              return;
          }
          // add clientX & clientY to all events - corresponds to average x, y
          var touches = evt.touches;
          if (touches && touches[0]) {
              var x = 0;
              var y = 0;
              var num = touches.length;
              var touch;
              for (var i=0; i<num; ++i) {
                  touch = this.getTouchClientXY(touches[i]);
                  x += touch.clientX;
                  y += touch.clientY;
              }
              evt.clientX = x / num;
              evt.clientY = y / num;
          }
          if (this.includeXY) {
              evt.xy = this.getMousePosition(evt);
          } 
          this.triggerEvent(type, evt);
      }
docs: Method: handleBrowserEvent
  Basically just a wrapper to the triggerEvent() function, but takes
  care to set a property 'xy' on the event with the current mouse
  position.
  
  Parameters:
  evt - {Event}