QuickRTCThemeData constructor

const QuickRTCThemeData({
  1. Color containerBackgroundColor = const Color(0xFF2D2D2D),
  2. BorderRadius containerBorderRadius = const BorderRadius.all(Radius.circular(12)),
  3. BoxDecoration? containerDecoration,
  4. Color placeholderBackgroundColor = const Color(0xFF424242),
  5. Color placeholderIconColor = Colors.white,
  6. double placeholderAvatarRadius = 40,
  7. TextStyle placeholderTextStyle = const TextStyle(fontSize: 32, color: Colors.white, fontWeight: FontWeight.w500),
  8. IconData audioOnIcon = Icons.mic,
  9. IconData audioOffIcon = Icons.mic_off,
  10. Color audioOnColor = Colors.green,
  11. Color audioOffColor = Colors.red,
  12. IconData videoOnIcon = Icons.videocam,
  13. IconData videoOffIcon = Icons.videocam_off,
  14. Color videoOnColor = Colors.green,
  15. Color videoOffColor = Colors.red,
  16. double indicatorIconSize = 14,
  17. EdgeInsets indicatorPadding = const EdgeInsets.all(4),
  18. BorderRadius indicatorBorderRadius = const BorderRadius.all(Radius.circular(4)),
  19. double indicatorBackgroundOpacity = 0.8,
  20. TextStyle nameTextStyle = const TextStyle(color: Colors.white, fontWeight: FontWeight.w500, fontSize: 14),
  21. EdgeInsets namePadding = const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
  22. Gradient? nameBackgroundGradient,
  23. Widget? loadingWidget,
  24. Color loadingIndicatorColor = Colors.white,
  25. OverlayPosition defaultAudioPosition = OverlayPosition.bottomRight,
  26. OverlayPosition defaultVideoPosition = OverlayPosition.topRight,
  27. OverlayPosition defaultNamePosition = OverlayPosition.bottomLeft,
})

Implementation

const QuickRTCThemeData({
  // Container
  this.containerBackgroundColor = const Color(0xFF2D2D2D),
  this.containerBorderRadius = const BorderRadius.all(Radius.circular(12)),
  this.containerDecoration,
  // Placeholder
  this.placeholderBackgroundColor = const Color(0xFF424242),
  this.placeholderIconColor = Colors.white,
  this.placeholderAvatarRadius = 40,
  this.placeholderTextStyle = const TextStyle(
    fontSize: 32,
    color: Colors.white,
    fontWeight: FontWeight.w500,
  ),
  // Audio indicator
  this.audioOnIcon = Icons.mic,
  this.audioOffIcon = Icons.mic_off,
  this.audioOnColor = Colors.green,
  this.audioOffColor = Colors.red,
  // Video indicator
  this.videoOnIcon = Icons.videocam,
  this.videoOffIcon = Icons.videocam_off,
  this.videoOnColor = Colors.green,
  this.videoOffColor = Colors.red,
  // Indicator common
  this.indicatorIconSize = 14,
  this.indicatorPadding = const EdgeInsets.all(4),
  this.indicatorBorderRadius = const BorderRadius.all(Radius.circular(4)),
  this.indicatorBackgroundOpacity = 0.8,
  // Name overlay
  this.nameTextStyle = const TextStyle(
    color: Colors.white,
    fontWeight: FontWeight.w500,
    fontSize: 14,
  ),
  this.namePadding = const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
  this.nameBackgroundGradient,
  // Loading
  this.loadingWidget,
  this.loadingIndicatorColor = Colors.white,
  // Default positions
  this.defaultAudioPosition = OverlayPosition.bottomRight,
  this.defaultVideoPosition = OverlayPosition.topRight,
  this.defaultNamePosition = OverlayPosition.bottomLeft,
});