update tmpPos on drag start

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-07-27 00:27:39 +08:00
parent 819a28c48c
commit 916931dd11
4 changed files with 11 additions and 40 deletions

View File

@@ -1165,7 +1165,10 @@ class PlPlayerController {
updateSliderPositionSecond();
}
void onChangedSliderStart() {
void onChangedSliderStart([Duration? value]) {
if (value != null) {
_sliderTempPosition.value = value;
}
_isSliderMoving.value = true;
}

View File

@@ -1,30 +0,0 @@
String printDuration(Duration? duration) {
if (duration == null) return "--:--";
/*String twoDigits(int n) {
if (n >= 10||n < 0) return "$n";
return "0$n";
}*/
String twoDigits(int n) => n.toString().padLeft(2, "0");
String twoDigitMinutes = twoDigits(duration.inMinutes).replaceAll("-", "");
String twoDigitSeconds = twoDigits(
duration.inSeconds.remainder(60),
).replaceAll("-", "");
//customDebugPrint(duration.inSeconds.remainder(60));
return "$twoDigitMinutes:$twoDigitSeconds";
}
String printDurationWithHours(Duration? duration) {
if (duration == null) return "--:--:--";
String twoDigits(int n) {
if (n >= 10) return "$n";
return "0$n";
}
String twoDigitHours = twoDigits(duration.inHours);
String twoDigitMinutes = twoDigits(duration.inMinutes.remainder(60));
String twoDigitSeconds = twoDigits(duration.inSeconds.remainder(60));
return "$twoDigitHours:$twoDigitMinutes:$twoDigitSeconds";
}

View File

@@ -20,7 +20,6 @@ import 'package:PiliPlus/plugin/pl_player/models/double_tap_type.dart';
import 'package:PiliPlus/plugin/pl_player/models/duration.dart';
import 'package:PiliPlus/plugin/pl_player/models/fullscreen_mode.dart';
import 'package:PiliPlus/plugin/pl_player/models/gesture_type.dart';
import 'package:PiliPlus/plugin/pl_player/utils.dart';
import 'package:PiliPlus/plugin/pl_player/widgets/app_bar_ani.dart';
import 'package:PiliPlus/plugin/pl_player/widgets/backward_seek.dart';
import 'package:PiliPlus/plugin/pl_player/widgets/bottom_control.dart';
@@ -1177,14 +1176,13 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
const SizedBox(width: 2),
Obx(
() {
final durationSeconds =
plPlayerController.durationSeconds.value;
return Text(
durationSeconds.inMinutes >= 60
? printDurationWithHours(
durationSeconds,
)
: printDuration(durationSeconds),
DurationUtil.formatDuration(
plPlayerController
.durationSeconds
.value
.inSeconds,
),
style: textStyle,
);
},

View File

@@ -65,7 +65,7 @@ class BottomControl extends StatelessWidget {
thumbRadius: 7,
onDragStart: (duration) {
feedBack();
controller.onChangedSliderStart();
controller.onChangedSliderStart(duration.timeStamp);
},
onDragUpdate: (duration) {
double newProgress =