seekToRelativePosition method

void seekToRelativePosition(
  1. Offset globalPosition
)

Implementation

void seekToRelativePosition(Offset globalPosition) async {
  final RenderObject? renderObject = context.findRenderObject();
  if (renderObject != null) {
    final box = renderObject as RenderBox;
    final Offset tapPos = box.globalToLocal(globalPosition);
    final double relative = tapPos.dx / box.size.width;
    if (relative > 0) {
      final Duration position = controller!.value.duration! * relative;
      lastSeek = position;
      await pipFlutterPlayerController!.seekTo(position);
      onFinishedLastSeek();
      if (relative >= 1) {
        lastSeek = controller!.value.duration;
        await pipFlutterPlayerController!.seekTo(controller!.value.duration!);
        onFinishedLastSeek();
      }
    }
  }
}