Explorar o código

fix progress bar goes out while play live stream. (#115)

* fix progress bar goes out while play live stream.

* fix ios part
fei long %!s(int64=6) %!d(string=hai) anos
pai
achega
46fe826bd0
Modificáronse 2 ficheiros con 8 adicións e 6 borrados
  1. 4 3
      lib/src/cupertino_progress_bar.dart
  2. 4 3
      lib/src/material_progress_bar.dart

+ 4 - 3
lib/src/cupertino_progress_bar.dart

@@ -146,9 +146,10 @@ class _ProgressBarPainter extends CustomPainter {
     if (!value.initialized) {
       return;
     }
-    final double playedPart = value.position.inMilliseconds /
-        value.duration.inMilliseconds *
-        size.width;
+    final double playedPartPercent = value.position.inMilliseconds /
+        value.duration.inMilliseconds;
+    final double playedPart = playedPartPercent > 1? size.width
+        : playedPartPercent * size.width;
     for (DurationRange range in value.buffered) {
       final double start = range.startFraction(value.duration) * size.width;
       final double end = range.endFraction(value.duration) * size.width;

+ 4 - 3
lib/src/material_progress_bar.dart

@@ -144,9 +144,10 @@ class _ProgressBarPainter extends CustomPainter {
     if (!value.initialized) {
       return;
     }
-    final double playedPart = value.position.inMilliseconds /
-        value.duration.inMilliseconds *
-        size.width;
+    final double playedPartPercent = value.position.inMilliseconds /
+        value.duration.inMilliseconds;
+    final double playedPart = playedPartPercent > 1? size.width
+        : playedPartPercent * size.width;
     for (DurationRange range in value.buffered) {
       final double start = range.startFraction(value.duration) * size.width;
       final double end = range.endFraction(value.duration) * size.width;