MaterialVideoControlsThemeData constructor

const MaterialVideoControlsThemeData({
  1. bool displaySeekBar = true,
  2. bool automaticallyImplySkipNextButton = true,
  3. bool automaticallyImplySkipPreviousButton = true,
  4. bool volumeGesture = false,
  5. bool brightnessGesture = false,
  6. bool seekGesture = false,
  7. bool gesturesEnabledWhileControlsVisible = true,
  8. bool seekOnDoubleTap = false,
  9. bool seekOnDoubleTapEnabledWhileControlsVisible = true,
  10. List<int> seekOnDoubleTapLayoutTapsRatios = const [1, 1, 1],
  11. List<int> seekOnDoubleTapLayoutWidgetRatios = const [1, 1, 1],
  12. bool visibleOnMount = false,
  13. bool speedUpOnLongPress = false,
  14. double speedUpFactor = 2.0,
  15. double verticalGestureSensitivity = 100,
  16. double horizontalGestureSensitivity = 1000,
  17. Color? backdropColor = const Color(0x66000000),
  18. EdgeInsets? padding,
  19. Duration controlsHoverDuration = const Duration(seconds: 3),
  20. Duration controlsTransitionDuration = const Duration(milliseconds: 300),
  21. Widget bufferingIndicatorBuilder(
    1. BuildContext
    )?,
  22. Widget volumeIndicatorBuilder(
    1. BuildContext,
    2. double
    )?,
  23. Widget brightnessIndicatorBuilder(
    1. BuildContext,
    2. double
    )?,
  24. Widget seekIndicatorBuilder(
    1. BuildContext,
    2. Duration
    )?,
  25. Widget speedUpIndicatorBuilder(
    1. BuildContext,
    2. double
    )?,
  26. List<Widget> primaryButtonBar = const [Spacer(flex: 2), MaterialSkipPreviousButton(), Spacer(), MaterialPlayOrPauseButton(iconSize: 48.0), Spacer(), MaterialSkipNextButton(), Spacer(flex: 2)],
  27. List<Widget> topButtonBar = const [],
  28. EdgeInsets topButtonBarMargin = const EdgeInsets.symmetric(horizontal: 16.0),
  29. List<Widget> bottomButtonBar = const [MaterialPositionIndicator(), Spacer(), MaterialFullscreenButton()],
  30. EdgeInsets bottomButtonBarMargin = const EdgeInsets.only(left: 16.0, right: 8.0),
  31. double buttonBarHeight = 56.0,
  32. double buttonBarButtonSize = 24.0,
  33. Color buttonBarButtonColor = const Color(0xFFFFFFFF),
  34. EdgeInsets seekBarMargin = EdgeInsets.zero,
  35. double seekBarHeight = 2.4,
  36. double seekBarContainerHeight = 36.0,
  37. Color seekBarColor = const Color(0x3DFFFFFF),
  38. Color seekBarPositionColor = const Color(0xFFFF0000),
  39. Color seekBarBufferColor = const Color(0x3DFFFFFF),
  40. double seekBarThumbSize = 12.8,
  41. Color seekBarThumbColor = const Color(0xFFFF0000),
  42. Alignment seekBarAlignment = Alignment.bottomCenter,
  43. bool shiftSubtitlesOnControlsVisibilityChange = false,
})

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

Implementation

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