precheck video dimension

Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-04-23 17:08:51 +08:00
parent efc202c10f
commit 5b5983ed50
32 changed files with 237 additions and 81 deletions

View File

@@ -9,6 +9,7 @@ import 'package:PiliPlus/http/search.dart';
import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/common/stat_type.dart';
import 'package:PiliPlus/models_new/music/bgm_recommend_list.dart';
import 'package:PiliPlus/models_new/video/video_detail/dimension.dart';
import 'package:PiliPlus/utils/duration_utils.dart';
import 'package:PiliPlus/utils/page_utils.dart';
import 'package:PiliPlus/utils/platform_utils.dart';
@@ -33,14 +34,22 @@ class MusicVideoCardH extends StatelessWidget {
type: MaterialType.transparency,
child: InkWell(
onTap: () async {
int? cid =
videoItem.cid ?? await SearchHttp.ab2c(bvid: videoItem.bvid);
int? cid = videoItem.cid;
Dimension? dimension;
if (cid == null) {
if (await SearchHttp.ab2cWithDimension(bvid: videoItem.bvid)
case final res?) {
cid = res.cid;
dimension = res.dimension;
}
}
if (cid != null) {
PageUtils.toVideoPage(
bvid: videoItem.bvid,
cid: cid,
cover: videoItem.cover,
title: videoItem.title,
dimension: dimension,
);
}
},