mod: 更新播放器底栏配置

This commit is contained in:
guozhigq
2024-04-06 11:30:53 +08:00
parent 53f266dcb8
commit 4a7da8c1d2
4 changed files with 17 additions and 89 deletions

View File

@ -22,6 +22,7 @@ import 'package:screen_brightness/screen_brightness.dart';
import '../../../models/video/subTitile/content.dart';
import '../../../http/danmaku.dart';
import '../../../plugin/pl_player/models/bottom_control_type.dart';
import '../../../utils/id_utils.dart';
import 'widgets/header_control.dart';
@ -98,6 +99,13 @@ class VideoDetailController extends GetxController
<SubTitileContentModel>[].obs;
late bool enableRelatedVideo;
List subtitles = [];
RxList<BottomControlType> bottomList = [
BottomControlType.playOrPause,
BottomControlType.time,
BottomControlType.space,
BottomControlType.fit,
BottomControlType.fullscreen,
].obs;
@override
void onInit() {

View File

@ -24,6 +24,7 @@ import 'package:pilipala/plugin/pl_player/models/play_repeat.dart';
import 'package:pilipala/services/service_locator.dart';
import 'package:pilipala/utils/storage.dart';
import '../../../plugin/pl_player/models/bottom_control_type.dart';
import '../../../services/shutdown_timer_service.dart';
import 'widgets/app_bar.dart';
@ -302,6 +303,7 @@ class _VideoDetailPageState extends State<VideoDetailPage>
playerController: plPlayerController!,
),
),
bottomList: vdCtr.bottomList,
);
},
);

View File

@ -214,8 +214,8 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
/// 上一集
BottomControlType.pre: ComBtn(
icon: const Icon(
Icons.skip_previous_outlined,
size: 15,
Icons.skip_previous_rounded,
size: 21,
color: Colors.white,
),
fuc: () {},
@ -229,8 +229,8 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
/// 下一集
BottomControlType.next: ComBtn(
icon: const Icon(
Icons.last_page_outlined,
size: 15,
Icons.skip_next_rounded,
size: 21,
color: Colors.white,
),
fuc: () {},
@ -239,6 +239,7 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
/// 时间进度
BottomControlType.time: Row(
children: [
const SizedBox(width: 8),
Obx(() {
return Text(
_.durationSeconds.value >= 3600

View File

@ -68,91 +68,8 @@ class BottomControl extends StatelessWidget implements PreferredSizeWidget {
);
},
),
Row(
children: [...buildBottomControl!],
),
// Row(
// children: [
// PlayOrPauseButton(
// controller: _,
// ),
// const SizedBox(width: 4),
// // 播放时间
// Obx(() {
// return Text(
// _.durationSeconds.value >= 3600
// ? printDurationWithHours(
// Duration(seconds: _.positionSeconds.value))
// : printDuration(
// Duration(seconds: _.positionSeconds.value)),
// style: textStyle,
// );
// }),
// const SizedBox(width: 2),
// const Text('/', style: textStyle),
// const SizedBox(width: 2),
// Obx(
// () => Text(
// _.durationSeconds.value >= 3600
// ? printDurationWithHours(
// Duration(seconds: _.durationSeconds.value))
// : printDuration(
// Duration(seconds: _.durationSeconds.value)),
// style: textStyle,
// ),
// ),
// const Spacer(),
// // 倍速
// // Obx(
// // () => SizedBox(
// // width: 45,
// // height: 34,
// // child: TextButton(
// // style: ButtonStyle(
// // padding: MaterialStateProperty.all(EdgeInsets.zero),
// // ),
// // onPressed: () {
// // _.togglePlaybackSpeed();
// // },
// // child: Text(
// // '${_.playbackSpeed.toString()}X',
// // style: textStyle,
// // ),
// // ),
// // ),
// // ),
// SizedBox(
// height: 30,
// child: TextButton(
// onPressed: () => _.toggleVideoFit(),
// style: ButtonStyle(
// padding: MaterialStateProperty.all(EdgeInsets.zero),
// ),
// child: Obx(
// () => Text(
// _.videoFitDEsc.value,
// style: const TextStyle(color: Colors.white, fontSize: 13),
// ),
// ),
// ),
// ),
// const SizedBox(width: 10),
// // 全屏
// Obx(
// () => ComBtn(
// icon: Icon(
// _.isFullScreen.value
// ? FontAwesomeIcons.compress
// : FontAwesomeIcons.expand,
// size: 15,
// color: Colors.white,
// ),
// fuc: () => triggerFullScreen!(),
// ),
// ),
// ],
// ),
const SizedBox(height: 12),
Row(children: [...buildBottomControl!]),
const SizedBox(height: 10),
],
),
);