RecordingModalOptions class

Configuration for the recording modal enabling server-side capture with comprehensive layout/styling options.

  • confirmRecording - Override for confirmRecording; receives {parameters}. Called when user taps "Confirm" to commit current settings before starting.
  • startRecording - Override for startRecording; receives {parameters}. Called when user taps "Start Recording" after confirmation; emits socket event to initiate server-side capture.
  • parameters - Must expose recordingVideoType ('video'/'media'/'all'), recordingDisplayType ('video'/'media'/'all'), recordingBackgroundColor, recordingNameTagsColor, recordingOrientationVideo ('landscape'/'portrait'/'all'), recordingNameTags, recordingAddText, recordingCustomText, recordingCustomTextPosition, recordingCustomTextColor, recordingMediaOptions ('video'/'audio'), recordingAudioOptions ('all'/'onScreen'/'host'), recordingVideoOptions ('all'/'mainScreen'), recordingAddHLS, eventType, and recordPaused.
  • position - Modal placement via getModalPosition (e.g., 'bottomRight').
  • backgroundColor - Background color for modal container.
  • styles - Optional ModalStyleOptions for advanced theming (padding, border radius, etc.).
  • title / confirmButtonChild / startButtonChild - Custom widgets for header and action buttons.

Usage

  1. Modal displays two tabs: "Basic" (StandardPanelComponent) and "Advanced" (AdvancedPanelComponent).
  2. Basic tab: recordingVideoType, recordingDisplayType, recordingBackgroundColor, recordingNameTagsColor, recordingOrientationVideo dropdowns; recordingNameTags switch.
  3. Advanced tab: recordingAddText switch, recordingCustomText input, recordingCustomTextPosition/recordingCustomTextColor dropdowns; recordingMediaOptions, recordingAudioOptions, recordingVideoOptions, recordingAddHLS toggles.
  4. "Confirm" button validates settings and calls confirmRecording, updating parameters; "Start Recording" button enabled after confirmation, invokes startRecording which emits socket event.
  5. Override via MediasfuUICustomOverrides.recordingModal to inject watermark preview, compliance warnings, or custom encoding presets.

Constructors

RecordingModalOptions.new({required bool isRecordingModalVisible, required VoidCallback onClose, Color backgroundColor = const Color(0xFF83C0E9), String position = 'bottomRight', required ConfirmRecordingType confirmRecording, required StartRecordingType startRecording, required RecordingModalParameters parameters, ModalStyleOptions? styles, Widget? title, Widget? confirmButtonChild, Widget? startButtonChild})

Properties

backgroundColor Color
final
confirmButtonChild Widget?
final
confirmRecording ConfirmRecordingType
final
hashCode int
The hash code for this object.
no setterinherited
isRecordingModalVisible bool
final
onClose VoidCallback
final
parameters RecordingModalParameters
final
position String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
startButtonChild Widget?
final
startRecording StartRecordingType
final
styles ModalStyleOptions?
final
title Widget?
final

Methods

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