set dm for live

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-11-21 13:57:43 +08:00
parent ace949aaa0
commit 6692c9e851
5 changed files with 834 additions and 733 deletions

View File

@@ -1,5 +1,7 @@
import 'package:PiliPlus/common/widgets/custom_icon.dart';
import 'package:PiliPlus/pages/live_room/controller.dart';
import 'package:PiliPlus/pages/video/widgets/header_control.dart'
show HeaderMixin;
import 'package:PiliPlus/plugin/pl_player/controller.dart';
import 'package:PiliPlus/plugin/pl_player/models/video_fit_type.dart';
import 'package:PiliPlus/plugin/pl_player/widgets/common_btn.dart';
@@ -10,7 +12,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:get/get.dart';
class BottomControl extends StatelessWidget {
class BottomControl extends StatefulWidget {
const BottomControl({
super.key,
required this.plPlayerController,
@@ -27,6 +29,15 @@ class BottomControl extends StatelessWidget {
final TextStyle subTitleStyle;
final TextStyle titleStyle;
@override
State<BottomControl> createState() => _BottomControlState();
}
class _BottomControlState extends State<BottomControl> with HeaderMixin {
late final LiveRoomController liveRoomCtr = widget.liveRoomCtr;
@override
late final PlPlayerController plPlayerController = widget.plPlayerController;
@override
Widget build(BuildContext context) {
final isFullScreen = plPlayerController.isFullScreen.value;
@@ -47,7 +58,7 @@ class BottomControl extends StatelessWidget {
size: 18,
color: Colors.white,
),
onTap: onRefresh,
onTap: widget.onRefresh,
),
const Spacer(),
ComBtn(
@@ -102,6 +113,15 @@ class BottomControl extends StatelessWidget {
);
},
),
ComBtn(
tooltip: '弹幕设置',
icon: const Icon(
size: 18,
CustomIcons.dm_settings,
color: Colors.white,
),
onTap: showSetDanmaku,
),
Obx(
() => PopupMenuButton<VideoFitType>(
tooltip: '画面比例',