Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-11-22 19:35:42 +08:00
parent cb8333d4c0
commit c4aca389a8
8 changed files with 23 additions and 18 deletions

View File

@@ -61,9 +61,14 @@ import 'package:intl/intl.dart' show DateFormat;
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
mixin TimeBatteryMixin<T extends StatefulWidget> on State<T> {
PlPlayerController get plPlayerController;
ContextSingleTicker? provider;
ContextSingleTicker get effectiveProvider =>
provider ??= ContextSingleTicker(context, autoStart: false);
ContextSingleTicker get effectiveProvider => provider ??= ContextSingleTicker(
context,
autoStart: () =>
plPlayerController.showControls.value &&
!plPlayerController.controlsLock.value,
);
bool get isPortrait;
bool get isFullScreen;
@@ -102,10 +107,7 @@ mixin TimeBatteryMixin<T extends StatefulWidget> on State<T> {
bool _showCurrTime = false;
void showCurrTimeIfNeeded(bool isFullScreen) {
_showCurrTime = !isPortrait && (isFullScreen || !horizontalScreen);
if (_showCurrTime) {
now.value = _format.format(DateTime.now());
getBatteryLevelIfNeeded();
} else {
if (!_showCurrTime) {
stopClock();
}
}
@@ -2415,6 +2417,7 @@ class HeaderControlState extends State<HeaderControl>
);
}
late final _titleKey = GlobalKey();
late final isFileSource = videoDetailCtr.isFileSource;
@override
@@ -2449,6 +2452,7 @@ class HeaderControlState extends State<HeaderControl>
videoDetail.title!;
}
return MarqueeText(
key: _titleKey,
title,
spacing: 30,
velocity: 30,
@@ -2581,7 +2585,7 @@ class HeaderControlState extends State<HeaderControl>
),
),
],
if (plPlayerController.enableSponsorBlock == true)
if (plPlayerController.enableSponsorBlock)
SizedBox(
width: 42,
height: 34,