anchor.diff:        }
       }
       
  -    if (newGroup.isGrid) {
  +    if (_currentGroup.isGrid) {
         if (_isDropzoneWider(dropzone)) {
           if (_isInDisabledHorizontalRegion(dropzone, dropzonePosition, mousePagePosition)) {
             return; 
  
positive.code:     // Only install listeners once per SortableGroup.
      if (installedElements.length == 1) {
        _logger.finest('first element in this sortable group installed, add listeners');
        // Create placeholder on dragStart (only possible when drag starts in a sortable)
        _dragStartSub = onDragStart.listen((DraggableEvent event) {
          _logger.finest('dragStart');
          
          _currentPlaceholder = new _Placeholder(event.draggable, currentDraggableGroup);
        });
        
        // Show placeholder when an item of this group is entered.
        _dragEnterSub = _dropzoneGroup.onDragEnter.listen((DropzoneEvent event) {
          _logger.finest('dragEnter');
          
          // Test if there already is a placeholder.
          if (_currentPlaceholder == null) {
            _currentPlaceholder = new _Placeholder(event.draggable, 
                currentDraggableGroup);
          }
          
          // Show a placeholder for the entered dropzone.
          _currentPlaceholder.showPlaceholder(event.dropzone, this);
        });
      }
    }
    
    /**
  
negative.code:  */
  class _Placeholder {
    /// The draggable that this placeholder is for.
    final Element _draggable;
    
    final String _draggableWidth;
    final String _draggableHeight;
    
    /// Position of the draggable element before dragging.
    final Position _originalPosition;
    
    /// The group of the draggable element before dragging. 
    /// Might be a [DraggableGroup] or a [SortableGroup].
    final DraggableGroup _originalGroup;
    
    /// Current Position of the placeholder.
    Position _currentPosition;
    
    /// Current group of the placeholder.
    SortableGroup _currentGroup;
    
    /// The placeholder element.
    Element placeholderElement;
      
    /// DragOver subscription used when dropzone is bigger than placeholder.
    StreamSubscription _dropzoneOverSub;
    
    /// A [DropzoneGroup] just for the placeholder to receive events from draggable.
    DropzoneGroup _placeholderDropzoneGroup;
    
    /**
     * Creates a new placeholder for the specified [draggable].
     */
    _Placeholder(Element draggable, DraggableGroup originalGroup) :
      _draggable = draggable,
      // Save draggable width and height because they are not available when 
      // draggable is removed from the DOM.
      _draggableWidth = draggable.getComputedStyle().width,
      _draggableHeight = draggable.getComputedStyle().height,
      _originalGroup = originalGroup,
      _originalPosition = new Position(draggable.parent,
          html5.getElementIndexInParent(draggable)){
      
      _createPlaceholderElement();
    }
    
    /**
     * Shows the placeholder at the position of [dropzone].
  