onPanEnd method

dynamic onPanEnd(
  1. dynamic _
)

Implementation

onPanEnd(_) {
  final _pickUp = this.pickUp;
  if (_pickUp != null) {
    // print('panEnd');
    final _fromSlot = this._fromSlot!;
    this.pickUp = null;
    this._fromSlot = null;
    final offset = _pickUp.key.currentState!.rect.topLeft - _dragOffset;
    _pickUp.key.currentState!.rect = Rect.fromLTWH(
      offset.dx,
      offset.dy,
      _pickUp.rect.width,
      _pickUp.rect.height,
    );
    SchedulerBinding.instance?.addPostFrameCallback((timeStamp) {
      _pickUp.key.currentState!
        ..dragging = false
        ..rect = Rect.fromLTWH(
          _fromSlot.key.currentState!.rect.left,
          _fromSlot.key.currentState!.rect.top,
          _fromSlot.key.currentState!.rect.width,
          _fromSlot.key.currentState!.rect.height,
        );
    });
    _relationship[_fromSlot] = _pickUp;
    _createOverlay();
    setState(() {});
  }

  widget.onChanged?.call(items);
}