mod: view point

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-02-04 14:28:08 +08:00
parent a40c773491
commit 70aecd1e38
3 changed files with 18 additions and 18 deletions

View File

@@ -51,7 +51,8 @@ class SegmentProgressBar extends CustomPainter {
), ),
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
)..layout()) )..layout())
.height; .height +
2;
TextPainter getTextPainter() => TextPainter( TextPainter getTextPainter() => TextPainter(
text: TextSpan( text: TextSpan(

View File

@@ -1166,7 +1166,7 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
buildDmChart(context, plPlayerController), buildDmChart(context, plPlayerController),
if (plPlayerController.viewPointList.isNotEmpty && if (plPlayerController.viewPointList.isNotEmpty &&
plPlayerController.showVP.value) plPlayerController.showVP.value)
buildViewPointWidget(plPlayerController), buildViewPointWidget(plPlayerController, 4.25),
ProgressBar( ProgressBar(
progress: Duration(seconds: value), progress: Duration(seconds: value),
buffered: Duration(seconds: buffer), buffered: Duration(seconds: buffer),
@@ -1681,13 +1681,15 @@ Widget buildSeekPreviewWidget(PlPlayerController plPlayerController) {
}); });
} }
Widget buildViewPointWidget(PlPlayerController plPlayerController) { Widget buildViewPointWidget(
PlPlayerController plPlayerController, double offset) {
return LayoutBuilder( return LayoutBuilder(
builder: (context, constraints) { builder: (context, constraints) {
return SizedBox( return Container(
height: 20, height: 16,
margin: EdgeInsets.only(bottom: offset),
child: Listener( child: Listener(
behavior: HitTestBehavior.translucent, behavior: HitTestBehavior.opaque,
onPointerDown: (event) { onPointerDown: (event) {
try { try {
double seg = event.localPosition.dx / constraints.maxWidth; double seg = event.localPosition.dx / constraints.maxWidth;

View File

@@ -62,10 +62,7 @@ class BottomControl extends StatelessWidget implements PreferredSizeWidget {
buildDmChart(context, controller!, 4.5), buildDmChart(context, controller!, 4.5),
if (controller?.viewPointList.isNotEmpty == true && if (controller?.viewPointList.isNotEmpty == true &&
controller?.showVP.value == true) controller?.showVP.value == true)
Padding( buildViewPointWidget(controller!, 8.75),
padding: const EdgeInsets.only(bottom: 5.25),
child: buildViewPointWidget(controller!),
),
ProgressBar( ProgressBar(
progress: Duration(seconds: value), progress: Duration(seconds: value),
buffered: Duration(seconds: buffer), buffered: Duration(seconds: buffer),