mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
feat: 稍后再看&收藏夹播放全部
Co-authored-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:PiliPalaX/models/user/fav_detail.dart';
|
||||
import 'package:PiliPalaX/models/user/fav_folder.dart';
|
||||
import 'package:PiliPalaX/pages/common/multi_select_controller.dart';
|
||||
import 'package:PiliPalaX/utils/storage.dart';
|
||||
import 'package:PiliPalaX/utils/utils.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||
import 'package:get/get.dart';
|
||||
@@ -123,4 +124,25 @@ class FavDetailController extends MultiSelectController {
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
Future toViewPlayAll() async {
|
||||
if (loadingState.value is Success) {
|
||||
final FavDetailItemData firstItem =
|
||||
(loadingState.value as Success).response.first;
|
||||
final String heroTag = Utils.makeHeroTag(firstItem.bvid);
|
||||
Get.toNamed(
|
||||
'/video?bvid=${firstItem.bvid}&cid=${firstItem.cid}',
|
||||
arguments: {
|
||||
'videoItem': firstItem,
|
||||
'heroTag': heroTag,
|
||||
'sourceType': 'fav',
|
||||
'mediaId': item.value.id,
|
||||
'oid': firstItem.id,
|
||||
'favTitle': item.value.title,
|
||||
// 'favInfo': favInfo,
|
||||
'count': item.value.mediaCount,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,6 +60,15 @@ class _FavDetailPageState extends State<FavDetailPage> {
|
||||
}
|
||||
},
|
||||
child: Scaffold(
|
||||
floatingActionButton: Obx(
|
||||
() => (_favDetailController.item.value.mediaCount ?? -1) > 0
|
||||
? FloatingActionButton.extended(
|
||||
onPressed: _favDetailController.toViewPlayAll,
|
||||
label: const Text('播放全部'),
|
||||
icon: const Icon(Icons.playlist_play),
|
||||
)
|
||||
: const SizedBox.shrink(),
|
||||
),
|
||||
body: CustomScrollView(
|
||||
physics: const AlwaysScrollableScrollPhysics(),
|
||||
controller: _favDetailController.scrollController,
|
||||
|
||||
Reference in New Issue
Block a user