opt progress bar

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-09-22 15:14:59 +08:00
parent 66752093e4
commit b9eaa368b1
3 changed files with 19 additions and 11 deletions

View File

@@ -482,6 +482,13 @@ class _RenderProgressBar extends RenderBox {
}
}
@override
void dispose() {
_drag?.dispose();
_clearLabelCache();
super.dispose();
}
// This is the gesture recognizer used to move the thumb.
_EagerHorizontalDragGestureRecognizer? _drag;
@@ -620,6 +627,8 @@ class _RenderProgressBar extends RenderBox {
}
void _clearLabelCache() {
_cachedLeftLabel?.dispose();
_cachedRightLabel?.dispose();
_cachedLeftLabel = null;
_cachedRightLabel = null;
}

View File

@@ -53,7 +53,7 @@ class BottomControl extends StatelessWidget {
if (value > max || max <= 0) {
return const SizedBox.shrink();
}
return ProgressBar(
final child = ProgressBar(
progress: Duration(seconds: value),
buffered: Duration(seconds: buffer),
total: Duration(seconds: max),
@@ -109,6 +109,13 @@ class BottomControl extends StatelessWidget {
);
},
);
if (Utils.isDesktop) {
return MouseRegion(
cursor: SystemMouseCursors.click,
child: child,
);
}
return child;
}),
if (controller.enableSponsorBlock &&
videoDetailController.segmentProgressList.isNotEmpty)

View File

@@ -79,12 +79,7 @@ abstract class Utils {
static Future<Rect?> get sharePositionOrigin async {
if (await isIpad) {
final size = Get.size;
return Rect.fromLTWH(
0,
0,
size.width,
size.height / 2,
);
return Rect.fromLTWH(0, 0, size.width, size.height / 2);
}
return null;
}
@@ -96,10 +91,7 @@ abstract class Utils {
}
try {
await SharePlus.instance.share(
ShareParams(
text: text,
sharePositionOrigin: await sharePositionOrigin,
),
ShareParams(text: text, sharePositionOrigin: await sharePositionOrigin),
);
} catch (e) {
SmartDialog.showToast(e.toString());