MaterialVideoControlsThemeData class

Theming related data for MaterialVideoControls. These values are used to theme the descendant MaterialVideoControls.

Constructors

MaterialVideoControlsThemeData({bool displaySeekBar = true, bool automaticallyImplySkipNextButton = true, bool automaticallyImplySkipPreviousButton = true, bool volumeGesture = false, bool brightnessGesture = false, bool seekGesture = false, bool gesturesEnabledWhileControlsVisible = true, bool seekOnDoubleTap = false, bool seekOnDoubleTapEnabledWhileControlsVisible = true, List<int> seekOnDoubleTapLayoutTapsRatios = const [1, 1, 1], List<int> seekOnDoubleTapLayoutWidgetRatios = const [1, 1, 1], bool visibleOnMount = false, bool speedUpOnLongPress = false, double speedUpFactor = 2.0, double verticalGestureSensitivity = 100, double horizontalGestureSensitivity = 1000, Color? backdropColor = const Color(0x66000000), EdgeInsets? padding, Duration controlsHoverDuration = const Duration(seconds: 3), Duration controlsTransitionDuration = const Duration(milliseconds: 300), Widget bufferingIndicatorBuilder(BuildContext)?, Widget volumeIndicatorBuilder(BuildContext, double)?, Widget brightnessIndicatorBuilder(BuildContext, double)?, Widget seekIndicatorBuilder(BuildContext, Duration)?, Widget speedUpIndicatorBuilder(BuildContext, double)?, List<Widget> primaryButtonBar = const [Spacer(flex: 2), MaterialSkipPreviousButton(), Spacer(), MaterialPlayOrPauseButton(iconSize: 48.0), Spacer(), MaterialSkipNextButton(), Spacer(flex: 2)], List<Widget> topButtonBar = const [], EdgeInsets topButtonBarMargin = const EdgeInsets.symmetric(horizontal: 16.0), List<Widget> bottomButtonBar = const [MaterialPositionIndicator(), Spacer(), MaterialFullscreenButton()], EdgeInsets bottomButtonBarMargin = const EdgeInsets.only(left: 16.0, right: 8.0), double buttonBarHeight = 56.0, double buttonBarButtonSize = 24.0, Color buttonBarButtonColor = const Color(0xFFFFFFFF), EdgeInsets seekBarMargin = EdgeInsets.zero, double seekBarHeight = 2.4, double seekBarContainerHeight = 36.0, Color seekBarColor = const Color(0x3DFFFFFF), Color seekBarPositionColor = const Color(0xFFFF0000), Color seekBarBufferColor = const Color(0x3DFFFFFF), double seekBarThumbSize = 12.8, Color seekBarThumbColor = const Color(0xFFFF0000), Alignment seekBarAlignment = Alignment.bottomCenter, bool shiftSubtitlesOnControlsVisibilityChange = false})
Theming related data for MaterialVideoControls. These values are used to theme the descendant MaterialVideoControls.
const

Properties

automaticallyImplySkipNextButton bool
Whether a skip next button should be displayed if there are more than one videos in the playlist.
final
automaticallyImplySkipPreviousButton bool
Whether a skip previous button should be displayed if there are more than one videos in the playlist.
final
backdropColor Color?
Color of backdrop that comes up when controls are visible.
final
bottomButtonBar List<Widget>
Buttons to be displayed in the bottom button bar.
final
bottomButtonBarMargin EdgeInsets
Margin around the button bar.
final
brightnessGesture bool
Whether to modify screen brightness on vertical drag gesture on the left side of the screen.
final
brightnessIndicatorBuilder Widget Function(BuildContext, double)?
Custom builder for brightness indicator.
final
bufferingIndicatorBuilder Widget Function(BuildContext)?
Builder for the buffering indicator.
final
buttonBarButtonColor Color
Color of the button bar buttons.
final
buttonBarButtonSize double
Size of the button bar buttons.
final
buttonBarHeight double
Height of the button bar.
final
controlsHoverDuration Duration
Duration after which the controls will be hidden when there is no mouse movement.
final
controlsTransitionDuration Duration
Duration for which the controls will be animated when shown or hidden.
final
displaySeekBar bool
Whether to display seek bar.
final
gesturesEnabledWhileControlsVisible bool
Whether to allow gesture controls to work while controls are visible. NOTE: This option is ignored when gestures are false.
final
hashCode int
The hash code for this object.
no setterinherited
horizontalGestureSensitivity double
Gesture sensitivity on horizontal drag gestures, the higher the value is the less sensitive the gesture.
final
padding EdgeInsets?
Padding around the controls.
final
primaryButtonBar List<Widget>
Buttons to be displayed in the primary button bar.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
seekBarAlignment Alignment
Alignment of seek bar inside the seek bar container.
final
seekBarBufferColor Color
Color of the playback buffer section in the seek bar.
final
seekBarColor Color
Color of the seek bar.
final
seekBarContainerHeight double
Height of the seek bar Container.
final
seekBarHeight double
Height of the seek bar.
final
seekBarMargin EdgeInsets
Margin around the seek bar.
final
seekBarPositionColor Color
Color of the playback position section in the seek bar.
final
seekBarThumbColor Color
Color of the seek bar thumb.
final
seekBarThumbSize double
Size of the seek bar thumb.
final
seekGesture bool
Whether to seek on horizontal drag gesture.
final
seekIndicatorBuilder Widget Function(BuildContext, Duration)?
Custom builder for seek indicator.
final
seekOnDoubleTap bool
Whether to enable double tap to seek on left or right side of the screen.
final
seekOnDoubleTapEnabledWhileControlsVisible bool
Whether to allow double tap to seek on left or right side of the screen to work while controls are visible. NOTE: This option is ignored when seekOnDoubleTap is false.
final
seekOnDoubleTapLayoutTapsRatios List<int>
seekOnDoubleTapLayoutTapsRatios defines the width proportions for the interactive areas responsible for seek actions (backward seek, instant tap, forward seek) when a double tap occurs on the video widget. This property divides the video widget into three segments horizontally. Each integer in the list represents the relative width of each segment. By default, the value [1, 1, 1] means that the video widget is equally divided into three segments: the left segment for backward seek, the middle segment for instant tap (usually show and hide controls), and the right segment for forward seek. Adjusting these values changes the width of the interactive areas for each double tap action.
final
seekOnDoubleTapLayoutWidgetRatios List<int>
seekOnDoubleTapLayoutWidgetRatios defines the width proportions for the visual indicators or widgets that appear during the double tap actions (backward seek, instant tap, forward seek). Similar to seekOnDoubleTapLayoutTapsRatios, it divides the area where these indicators are displayed into three segments. Each integer in the list represents the relative width of each segment where the corresponding indicators will be shown. The default [1, 1, 1] equally divides the space for each indicator. Modifying these values can change the layout of the seek indicators, giving more or less space to each one based on the specified ratios.
final
shiftSubtitlesOnControlsVisibilityChange bool
Whether to shift the subtitles upwards when the controls are visible.
final
speedUpFactor double
Factor to speed up on long press.
final
speedUpIndicatorBuilder Widget Function(BuildContext, double)?
Custom builder for seek indicator.
final
speedUpOnLongPress bool
Whether to speed up on long press.
final
topButtonBar List<Widget>
Buttons to be displayed in the top button bar.
final
topButtonBarMargin EdgeInsets
Margin around the top button bar.
final
verticalGestureSensitivity double
Gesture sensitivity on vertical drag gestures, the higher the value is the less sensitive the gesture.
final
visibleOnMount bool
Whether the controls are initially visible.
final
volumeGesture bool
Whether to modify volume on vertical drag gesture on the right side of the screen.
final
volumeIndicatorBuilder Widget Function(BuildContext, double)?
Custom builder for volume indicator.
final

Methods

copyWith({bool? displaySeekBar, bool? automaticallyImplySkipNextButton, bool? automaticallyImplySkipPreviousButton, bool? volumeGesture, bool? brightnessGesture, bool? seekGesture, bool? gesturesEnabledWhileControlsVisible, bool? seekOnDoubleTap, bool? seekOnDoubleTapEnabledWhileControlsVisible, List<int>? seekOnDoubleTapLayoutTapsRatios, List<int>? seekOnDoubleTapLayoutWidgetRatios, bool? visibleOnMount, bool? speedUpOnLongPress, double? speedUpFactor, double? verticalGestureSensitivity, double? horizontalGestureSensitivity, Color? backdropColor, Duration? controlsHoverDuration, Duration? controlsTransitionDuration, Widget bufferingIndicatorBuilder(BuildContext)?, Widget volumeIndicatorBuilder(BuildContext, double)?, Widget brightnessIndicatorBuilder(BuildContext, double)?, Widget seekIndicatorBuilder(BuildContext, Duration)?, Widget speedUpIndicatorBuilder(BuildContext, double)?, List<Widget>? primaryButtonBar, List<Widget>? topButtonBar, EdgeInsets? topButtonBarMargin, List<Widget>? bottomButtonBar, EdgeInsets? bottomButtonBarMargin, double? buttonBarHeight, double? buttonBarButtonSize, Color? buttonBarButtonColor, EdgeInsets? seekBarMargin, double? seekBarHeight, double? seekBarContainerHeight, Color? seekBarColor, Color? seekBarPositionColor, Color? seekBarBufferColor, double? seekBarThumbSize, Color? seekBarThumbColor, Alignment? seekBarAlignment, bool? shiftSubtitlesOnControlsVisibilityChange}) MaterialVideoControlsThemeData
Creates a copy of this MaterialVideoControlsThemeData with the given fields replaced by the non-null parameter values.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited