From f3bad60fb6767ed64e653c2bec24e06570b2258d Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Sat, 16 Aug 2025 10:37:31 +0800 Subject: [PATCH] tweak Signed-off-by: bggRGjQaUbCoE --- lib/plugin/pl_player/view.dart | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/lib/plugin/pl_player/view.dart b/lib/plugin/pl_player/view.dart index fc5e58b8..0cf13062 100644 --- a/lib/plugin/pl_player/view.dart +++ b/lib/plugin/pl_player/view.dart @@ -1443,7 +1443,7 @@ class _PLVideoPlayerState extends State ), ), - if (plPlayerController.showSeekPreview) + if (!plPlayerController.isLive && plPlayerController.showSeekPreview) buildSeekPreviewWidget( plPlayerController, maxWidth, @@ -1778,8 +1778,9 @@ Widget buildSeekPreviewWidget( try { VideoShotData data = plPlayerController.videoShot!.data; - final isFullScreen = plPlayerController.isFullScreen.value; - final double scale = isFullScreen && !plPlayerController.isVertical + final double scale = + plPlayerController.isFullScreen.value && + !plPlayerController.isVertical ? 4 : 3; double height = 27 * scale; @@ -1795,7 +1796,7 @@ Widget buildSeekPreviewWidget( double imgYSize = data.imgYSize; return Align( - alignment: isFullScreen ? Alignment.center : Alignment.center, + alignment: Alignment.center, child: Obx( () { final index = plPlayerController.previewIndex.value!; @@ -1871,10 +1872,7 @@ Future _getImg(String url) async { final fileInfo = await cacheManager.getFileFromCache(cacheKey); if (fileInfo != null) { final bytes = await fileInfo.file.readAsBytes(); - final codec = await ui.instantiateImageCodec(bytes); - final frame = await codec.getNextFrame(); - codec.dispose(); - return frame.image; + return _loadImg(bytes); } else { final res = await Request().get( url, @@ -1883,14 +1881,19 @@ Future _getImg(String url) async { if (res.statusCode == 200) { final data = res.data; cacheManager.putFile(cacheKey, data, fileExtension: 'jpg'); - final codec = await ui.instantiateImageCodec(data); - final frame = await codec.getNextFrame(); - return frame.image; + return _loadImg(data); } } return null; } +Future _loadImg(Uint8List bytes) async { + final codec = await ui.instantiateImageCodec(bytes); + final frame = await codec.getNextFrame(); + codec.dispose(); + return frame.image; +} + class _VideoShotImageState extends State { late Size _size; late Rect _dstRect;