call_ui_kit library
A universal call UI kit for Flutter.
Provides a single CallScreen widget that handles personal audio calls, personal video calls, and group video calls. Fully customizable through CallTheme for colours, CallDimensions for sizes and CallStrings for text.
Classes
- CallAvatar
- A circle avatar that displays either a network image or a coloured initial fallback.
- CallBottomBarDimensions
- The metrics of the pill-shaped bar carrying mute, camera, speaker, screen-share, more and end-call.
- CallConnectionBannerDimensions
- The metrics of the strip that reports reconnecting and disconnected states.
- CallDimensions
- Every size the call UI lays out — button diameters, icon and font sizes, bar heights, paddings, gaps and radii.
- CallHandleBarDimensions
- The metrics of the rounded handle that marks a bottom sheet as draggable.
- CallIncomingScreenDimensions
- The metrics of the screen that announces an incoming call and offers to accept or decline it.
- CallMoreSheetDimensions
- The metrics of the sheet raised by the bottom bar's "more" button.
- CallOutgoingScreenDimensions
- The metrics of the screen shown while a call is being placed.
- CallParticipant
- Holds all information about a single call participant.
- CallParticipantsPanelDimensions
- The metrics of the draggable sheet listing everyone on the call, its invite button, and the host-action sheet raised from a row.
- CallParticipantTileDimensions
- The metrics of the tile that shows one participant's video or avatar, together with the name, mute, signal and screen-share overlays.
- CallPipDimensions
- The metrics of the draggable self-view that snaps to the screen corners.
- CallRightButtonsDimensions
- The metrics of the add-participant and effects buttons stacked against the right edge of the call screen.
- CallScreen
- A single call screen widget that adapts to personal audio, personal video, and group video calls based on the provided configuration.
- The metrics of the strip that reports an active screen share and offers to stop it.
- CallStrings
- Contains every user-facing string displayed by the call UI kit.
- CallTheme
- Defines the colour palette for the call UI.
- CallThumbnailRowDimensions
- The metrics of the horizontal row of participant thumbnails.
- CallTopBarDimensions
- The metrics of the bar carrying the caller name, status and the minimize/flip-camera actions.
- CallVideoContentDimensions
- The metrics of the area below the bars: the personal-call avatar, the "you are sharing your screen" panel, and the grid gutters.
- ConnectionStateBanner
- Shows a slim banner at the top of the call screen while the connection is being established or recovered.
- FloatingPipView
- A floating, draggable mini-view that displays the local participant's video stream during a call.
- GroupCallLayoutResolver
- Resolves the appropriate GroupCallLayoutMode based on participant count and screen-sharing state.
- IncomingCallScreen
- Displays an incoming call screen with caller info, and accept/decline buttons.
- MoreBottomSheet
- A modal bottom sheet with a handle bar, optional encryption label, custom content area, and a cancel button.
- OutgoingCallScreen
- Displays an outgoing call screen with caller info, optional mute/speaker toggles, and an end-call button.
- ParticipantsPanel
- A draggable bottom sheet showing all participants in a group call.
- ParticipantTile
- Displays a single call participant as a tile with layered overlays.
- PipSnapCalculator
- Calculates corner positions for the floating Picture-in-Picture view.
- Shows a contextual banner at the top of the call screen indicating that screen sharing is in progress.
- SignalStrengthIcon
- Renders a signal strength icon composed of four bars of increasing height.
- SpeakingIndicator
- Displays three vertical bars that animate in a sine-wave pattern to indicate that a participant is actively speaking.
- VideoSurface
- Hosts a video widget supplied by the application on an opaque, fully expanded surface.
Enums
- CallConnectionState
- Describes the transport state of a call, used to surface a banner while the connection is being established or recovered.
- CallType
- The type of call being made or received.
- GroupCallLayoutMode
- The layout mode used to arrange participants in a group call.
- PipCorner
- The screen corner a floating Picture-in-Picture view is anchored to.
- SignalStrength
- Signal strength level for a participant's network connection.