anchor.diff:      _pendingToDrag();
   
       // send out event
  -    _dragOutStreamController.add(new DragOutEvent._(this, _currentTarget, event, event.currentTarget));
  +    _dragOutStreamController.add(new DragOutEvent._(this, currentTarget, event, event.currentTarget));
     }
     void _mouseMoveHandler(MouseEvent event) {
       _logger.finest("got mouse move event");
  
positive.code:       _logger.finer("changing states from pending to dragging");
  
        // send start event
        _dragStartStreamController.add(new DragEvent._(this, _currentTarget, _startEvent));
  
        // switch from pending to dragging
        _dragStartPending = false;
  
negative.code: 
      // send end event if we weren't just pending
      if(!_dragStartPending) {
        _dragEndStreamController.add(new DragEvent._(this, currentTarget, event));
      }
  
      // clear current target
      currentTarget = null;
  
      // if we are on a delayed disable, do the disable
      if(_delayedDisable) {
  