Merge branch 'main' into feature-collections
This commit is contained in:
@ -22,6 +22,7 @@ import 'package:screen_brightness/screen_brightness.dart';
|
|||||||
|
|
||||||
import '../../../models/video/subTitile/content.dart';
|
import '../../../models/video/subTitile/content.dart';
|
||||||
import '../../../http/danmaku.dart';
|
import '../../../http/danmaku.dart';
|
||||||
|
import '../../../plugin/pl_player/models/bottom_control_type.dart';
|
||||||
import '../../../utils/id_utils.dart';
|
import '../../../utils/id_utils.dart';
|
||||||
import 'widgets/header_control.dart';
|
import 'widgets/header_control.dart';
|
||||||
|
|
||||||
@ -98,6 +99,13 @@ class VideoDetailController extends GetxController
|
|||||||
<SubTitileContentModel>[].obs;
|
<SubTitileContentModel>[].obs;
|
||||||
late bool enableRelatedVideo;
|
late bool enableRelatedVideo;
|
||||||
List subtitles = [];
|
List subtitles = [];
|
||||||
|
RxList<BottomControlType> bottomList = [
|
||||||
|
BottomControlType.playOrPause,
|
||||||
|
BottomControlType.time,
|
||||||
|
BottomControlType.space,
|
||||||
|
BottomControlType.fit,
|
||||||
|
BottomControlType.fullscreen,
|
||||||
|
].obs;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void onInit() {
|
void onInit() {
|
||||||
|
@ -24,6 +24,7 @@ import 'package:pilipala/plugin/pl_player/models/play_repeat.dart';
|
|||||||
import 'package:pilipala/services/service_locator.dart';
|
import 'package:pilipala/services/service_locator.dart';
|
||||||
import 'package:pilipala/utils/storage.dart';
|
import 'package:pilipala/utils/storage.dart';
|
||||||
|
|
||||||
|
import '../../../plugin/pl_player/models/bottom_control_type.dart';
|
||||||
import '../../../services/shutdown_timer_service.dart';
|
import '../../../services/shutdown_timer_service.dart';
|
||||||
import 'widgets/app_bar.dart';
|
import 'widgets/app_bar.dart';
|
||||||
|
|
||||||
@ -303,6 +304,7 @@ class _VideoDetailPageState extends State<VideoDetailPage>
|
|||||||
playerController: plPlayerController!,
|
playerController: plPlayerController!,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
bottomList: vdCtr.bottomList,
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
@ -214,8 +214,8 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
/// 上一集
|
/// 上一集
|
||||||
BottomControlType.pre: ComBtn(
|
BottomControlType.pre: ComBtn(
|
||||||
icon: const Icon(
|
icon: const Icon(
|
||||||
Icons.skip_previous_outlined,
|
Icons.skip_previous_rounded,
|
||||||
size: 15,
|
size: 21,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
),
|
),
|
||||||
fuc: () {},
|
fuc: () {},
|
||||||
@ -229,8 +229,8 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
/// 下一集
|
/// 下一集
|
||||||
BottomControlType.next: ComBtn(
|
BottomControlType.next: ComBtn(
|
||||||
icon: const Icon(
|
icon: const Icon(
|
||||||
Icons.last_page_outlined,
|
Icons.skip_next_rounded,
|
||||||
size: 15,
|
size: 21,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
),
|
),
|
||||||
fuc: () {},
|
fuc: () {},
|
||||||
@ -239,6 +239,7 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
/// 时间进度
|
/// 时间进度
|
||||||
BottomControlType.time: Row(
|
BottomControlType.time: Row(
|
||||||
children: [
|
children: [
|
||||||
|
const SizedBox(width: 8),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
return Text(
|
return Text(
|
||||||
_.durationSeconds.value >= 3600
|
_.durationSeconds.value >= 3600
|
||||||
|
@ -68,91 +68,8 @@ class BottomControl extends StatelessWidget implements PreferredSizeWidget {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
Row(
|
Row(children: [...buildBottomControl!]),
|
||||||
children: [...buildBottomControl!],
|
const SizedBox(height: 10),
|
||||||
),
|
|
||||||
// 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),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user