transform method

  1. @override
Widget transform(
  1. Widget item,
  2. TransformInfo info
)

Return a transformed widget, based on child and TransformInfo

Implementation

@override
Widget transform(Widget item, TransformInfo info) {
  final position = info.position;
  var child = item;
  if (_scale != null) {
    final scaleFactor = (1 - position!.abs()) * (1 - _scale!);
    final scale = _scale! + scaleFactor;

    child = Transform.scale(
      scale: scale,
      child: item,
    );
  }

  if (_fade != null) {
    final fadeFactor = (1 - position!.abs()) * (1 - _fade!);
    final opacity = _fade! + fadeFactor;
    child = Opacity(
      opacity: opacity,
      child: child,
    );
  }

  return child;
}