From 49679834de3b2cd2e20e7078529059eacd0aae9f Mon Sep 17 00:00:00 2001 From: Pranav Date: Mon, 23 Jan 2023 10:44:48 +0530 Subject: [PATCH 1/2] By default subtitles are off --- example/lib/app/app.dart | 1 + lib/src/chewie_player.dart | 6 ++++++ lib/src/cupertino/cupertino_controls.dart | 4 +++- lib/src/material/material_controls.dart | 5 +++-- lib/src/material/material_desktop_controls.dart | 5 +++-- 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/example/lib/app/app.dart b/example/lib/app/app.dart index 41175ad78..b52af1237 100644 --- a/example/lib/app/app.dart +++ b/example/lib/app/app.dart @@ -114,6 +114,7 @@ class _ChewieDemoState extends State { videoPlayerController: _videoPlayerController1, autoPlay: true, looping: true, + // showSubtitle: true, progressIndicatorDelay: bufferDelay != null ? Duration(milliseconds: bufferDelay!) : null, diff --git a/lib/src/chewie_player.dart b/lib/src/chewie_player.dart index 923996c7a..53c8bcd09 100644 --- a/lib/src/chewie_player.dart +++ b/lib/src/chewie_player.dart @@ -266,6 +266,7 @@ class ChewieController extends ChangeNotifier { this.zoomAndPan = false, this.maxScale = 2.5, this.subtitle, + this.showSubtitle = false, this.subtitleBuilder, this.customControls, this.errorBuilder, @@ -313,6 +314,7 @@ class ChewieController extends ChangeNotifier { bool? zoomAndPan, double? maxScale, Subtitles? subtitle, + bool? showSubtitle, Widget Function(BuildContext, dynamic)? subtitleBuilder, Widget? customControls, Widget Function(BuildContext, String)? errorBuilder, @@ -361,6 +363,7 @@ class ChewieController extends ChangeNotifier { additionalOptions: additionalOptions ?? this.additionalOptions, showControls: showControls ?? this.showControls, subtitle: subtitle ?? this.subtitle, + showSubtitle: showSubtitle ?? this.showSubtitle, subtitleBuilder: subtitleBuilder ?? this.subtitleBuilder, customControls: customControls ?? this.customControls, errorBuilder: errorBuilder ?? this.errorBuilder, @@ -422,6 +425,9 @@ class ChewieController extends ChangeNotifier { /// Add a List of Subtitles here in `Subtitles.subtitle` Subtitles? subtitle; + /// Option to disable subtitle by default + bool showSubtitle; + /// The controller for the video you want to play final VideoPlayerController videoPlayerController; diff --git a/lib/src/cupertino/cupertino_controls.dart b/lib/src/cupertino/cupertino_controls.dart index 5626b1481..e44f0ae32 100644 --- a/lib/src/cupertino/cupertino_controls.dart +++ b/lib/src/cupertino/cupertino_controls.dart @@ -115,7 +115,9 @@ class _CupertinoControlsState extends State 0.0, notifier.hideStuff ? barHeight * 0.8 : 0.0, ), - child: _buildSubtitles(chewieController.subtitle!), + child: chewieController.showSubtitle + ? _buildSubtitles(chewieController.subtitle!) + : const SizedBox(), ), _buildBottomBar(backgroundColor, iconColor, barHeight), ], diff --git a/lib/src/material/material_controls.dart b/lib/src/material/material_controls.dart index 8b50e7dc9..f728f0641 100644 --- a/lib/src/material/material_controls.dart +++ b/lib/src/material/material_controls.dart @@ -100,8 +100,9 @@ class _MaterialControlsState extends State 0.0, notifier.hideStuff ? barHeight * 0.8 : 0.0, ), - child: - _buildSubtitles(context, chewieController.subtitle!), + child: chewieController.showSubtitle + ? _buildSubtitles(context, chewieController.subtitle!) + : const SizedBox(), ), _buildBottomBar(context), ], diff --git a/lib/src/material/material_desktop_controls.dart b/lib/src/material/material_desktop_controls.dart index 7533c973b..c93bad549 100644 --- a/lib/src/material/material_desktop_controls.dart +++ b/lib/src/material/material_desktop_controls.dart @@ -100,8 +100,9 @@ class _MaterialDesktopControlsState extends State 0.0, notifier.hideStuff ? barHeight * 0.8 : 0.0, ), - child: - _buildSubtitles(context, chewieController.subtitle!), + child: chewieController.showSubtitle + ? _buildSubtitles(context, chewieController.subtitle!) + : Container(), ), _buildBottomBar(context), ], From 9fcc5eaf38a9734ac3906944ba924b95c32a5fd9 Mon Sep 17 00:00:00 2001 From: Pranav Date: Mon, 3 Jul 2023 09:23:09 +0530 Subject: [PATCH 2/2] Marked as final and added documentation --- lib/src/chewie_player.dart | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/src/chewie_player.dart b/lib/src/chewie_player.dart index d414dbd34..81373d72d 100644 --- a/lib/src/chewie_player.dart +++ b/lib/src/chewie_player.dart @@ -427,8 +427,12 @@ class ChewieController extends ChangeNotifier { /// Add a List of Subtitles here in `Subtitles.subtitle` Subtitles? subtitle; - /// Option to disable subtitle by default - bool showSubtitle; + /// + /// Whether to display subtitles. + /// + /// By default, this is set to `false`, which hides them. + /// + final bool showSubtitle; /// The controller for the video you want to play final VideoPlayerController videoPlayerController;