diff --git a/lib/pages/live_room/widgets/bottom_control.dart b/lib/pages/live_room/widgets/bottom_control.dart index 76caf3214..932b2ab94 100644 --- a/lib/pages/live_room/widgets/bottom_control.dart +++ b/lib/pages/live_room/widgets/bottom_control.dart @@ -7,6 +7,7 @@ import 'package:PiliPlus/plugin/pl_player/widgets/common_btn.dart'; import 'package:PiliPlus/plugin/pl_player/widgets/play_pause_btn.dart'; import 'package:PiliPlus/utils/storage.dart'; import 'package:PiliPlus/utils/storage_key.dart'; +import 'package:PiliPlus/utils/theme_utils.dart'; import 'package:flutter/foundation.dart' show kDebugMode; import 'package:flutter/material.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; @@ -37,6 +38,8 @@ class _BottomControlState extends State with HeaderMixin { late final LiveRoomController liveRoomCtr = widget.liveRoomCtr; @override late final PlPlayerController plPlayerController = widget.plPlayerController; + @override + ThemeData get theme => ThemeUtils.darkTheme; @override Widget build(BuildContext context) { diff --git a/lib/pages/video/widgets/header_mixin.dart b/lib/pages/video/widgets/header_mixin.dart index 0f0431c0c..0031fe454 100644 --- a/lib/pages/video/widgets/header_mixin.dart +++ b/lib/pages/video/widgets/header_mixin.dart @@ -12,6 +12,8 @@ mixin HeaderMixin on State { bool get isFullScreen => plPlayerController.isFullScreen.value; + ThemeData? get theme => null; + Future? showBottomSheet( StatefulWidgetBuilder builder, { ValueGetter? padding, @@ -21,7 +23,16 @@ mixin HeaderMixin on State { maxWidth: 512, padding: padding, child: StatefulBuilder( - builder: (context, setState) => builder(context, setState), + builder: (context, setState) { + final theme = this.theme; + if (theme != null) { + return Theme( + data: theme, + child: builder(context, setState), + ); + } + return builder(context, setState); + }, ), ); }