QuickRTCThemeData class
Theme data for QuickRTC widgets
Provides consistent styling across all QuickRTC widgets including renderers, indicators, and overlays.
Example:
QuickRTCTheme(
data: QuickRTCThemeData(
containerBackgroundColor: Colors.grey[900]!,
audioOffColor: Colors.red,
),
child: MyApp(),
)
Constructors
- QuickRTCThemeData({Color containerBackgroundColor = const Color(0xFF2D2D2D), BorderRadius containerBorderRadius = const BorderRadius.all(Radius.circular(12)), BoxDecoration? containerDecoration, Color placeholderBackgroundColor = const Color(0xFF424242), Color placeholderIconColor = Colors.white, double placeholderAvatarRadius = 40, TextStyle placeholderTextStyle = const TextStyle(fontSize: 32, color: Colors.white, fontWeight: FontWeight.w500), IconData audioOnIcon = Icons.mic, IconData audioOffIcon = Icons.mic_off, Color audioOnColor = Colors.green, Color audioOffColor = Colors.red, IconData videoOnIcon = Icons.videocam, IconData videoOffIcon = Icons.videocam_off, Color videoOnColor = Colors.green, Color videoOffColor = Colors.red, double indicatorIconSize = 14, EdgeInsets indicatorPadding = const EdgeInsets.all(4), BorderRadius indicatorBorderRadius = const BorderRadius.all(Radius.circular(4)), double indicatorBackgroundOpacity = 0.8, TextStyle nameTextStyle = const TextStyle(color: Colors.white, fontWeight: FontWeight.w500, fontSize: 14), EdgeInsets namePadding = const EdgeInsets.symmetric(horizontal: 12, vertical: 8), Gradient? nameBackgroundGradient, Widget? loadingWidget, Color loadingIndicatorColor = Colors.white, OverlayPosition defaultAudioPosition = OverlayPosition.bottomRight, OverlayPosition defaultVideoPosition = OverlayPosition.topRight, OverlayPosition defaultNamePosition = OverlayPosition.bottomLeft})
-
const
Properties
- audioOffColor → Color
-
Color when audio is disabled
final
- audioOffIcon → IconData
-
Icon for audio disabled (muted)
final
- audioOnColor → Color
-
Color when audio is enabled
final
- audioOnIcon → IconData
-
Icon for audio enabled (unmuted)
final
- containerBackgroundColor → Color
-
Background color for renderer containers
final
- containerBorderRadius → BorderRadius
-
Border radius for renderer containers
final
- containerDecoration → BoxDecoration?
-
Optional custom decoration for containers (overrides backgroundColor)
final
- defaultAudioPosition → OverlayPosition
-
Default position for audio indicator
final
- defaultNamePosition → OverlayPosition
-
Default position for name overlay
final
- defaultVideoPosition → OverlayPosition
-
Default position for video indicator
final
- hashCode → int
-
The hash code for this object.
no setteroverride
- indicatorBackgroundOpacity → double
-
Opacity for indicator background
final
- indicatorBorderRadius → BorderRadius
-
Border radius for indicator containers
final
- indicatorIconSize → double
-
Icon size for indicators
final
- indicatorPadding → EdgeInsets
-
Padding inside indicator containers
final
- loadingIndicatorColor → Color
-
Color for default loading indicator
final
- loadingWidget → Widget?
-
Custom loading widget (null = default CircularProgressIndicator)
final
- nameBackgroundGradient → Gradient?
-
Gradient for name overlay background (null = default gradient)
final
- namePadding → EdgeInsets
-
Padding for name overlay
final
- nameTextStyle → TextStyle
-
Text style for participant name
final
- placeholderAvatarRadius → double
-
Radius for circular avatar placeholder
final
- placeholderBackgroundColor → Color
-
Background color for avatar placeholder
final
- placeholderIconColor → Color
-
Icon/text color for placeholder
final
- placeholderTextStyle → TextStyle
-
Text style for placeholder initials
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- videoOffColor → Color
-
Color when video is disabled
final
- videoOffIcon → IconData
-
Icon for video disabled
final
- videoOnColor → Color
-
Color when video is enabled
final
- videoOnIcon → IconData
-
Icon for video enabled
final
Methods
-
copyWith(
{Color? containerBackgroundColor, BorderRadius? containerBorderRadius, BoxDecoration? containerDecoration, Color? placeholderBackgroundColor, Color? placeholderIconColor, double? placeholderAvatarRadius, TextStyle? placeholderTextStyle, IconData? audioOnIcon, IconData? audioOffIcon, Color? audioOnColor, Color? audioOffColor, IconData? videoOnIcon, IconData? videoOffIcon, Color? videoOnColor, Color? videoOffColor, double? indicatorIconSize, EdgeInsets? indicatorPadding, BorderRadius? indicatorBorderRadius, double? indicatorBackgroundOpacity, TextStyle? nameTextStyle, EdgeInsets? namePadding, Gradient? nameBackgroundGradient, Widget? loadingWidget, Color? loadingIndicatorColor, OverlayPosition? defaultAudioPosition, OverlayPosition? defaultVideoPosition, OverlayPosition? defaultNamePosition}) → QuickRTCThemeData - Create a copy with modified 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.
override
Constants
- dark → const QuickRTCThemeData
- Dark theme preset (default)
- light → const QuickRTCThemeData
- Light theme preset