PopOverlayContent class

Configuration class for pop overlay content and behavior

This class encapsulates all settings for how a pop overlay should appear, behave, and interact with user input. It serves as the primary configuration object passed to the PopOverlay.addPop method.

Constructors

PopOverlayContent({required Widget widget, required String id, bool shouldBlurBackground = false, Duration? duration, bool shouldDismissOnBackgroundTap = true, Function? onDismissed, Color? dismissBarrierColor, bool shouldAnimatePopup = true, Offset? popPositionOffset, Offset? offsetToPopFrom, EdgeInsetsGeometry? padding, bool hasBoxShadow = true, Color? frameColor, double frameWidth = 0.5, bool isDraggeable = true, FrameDesign? frameDesign, bool shouldMakeInvisibleOnDismiss = false, bool shouldStartInvisible = false, Function? onMadeInvisible, Function? initState, Duration? popPositionAnimationDuration, BorderRadiusGeometry? borderRadius})
Creates a new pop overlay content configuration

Properties

animationController Injected<bool>
Internal animation controller to handle entry and exit animations Uses a boolean state: false for entry, true for exit
final
borderRadius BorderRadiusGeometry?
Optional borderRadius border radius for the popup
final
dismissBarrierColor Color?
Color of the dismissible background barrier Only visible when shouldDismissOnBackgroundTap is true
final
duration Duration?
Optional auto-dismissal duration When provided, the overlay will automatically dismiss after this time period
final
frameColor Color?
final
frameDesign FrameDesign?
final
frameWidth double
final
hasBoxShadow bool
final
hasExpensiveFeatures bool
Performance check - returns true if this overlay has expensive features enabled
no setter
hashCode int
The hash code for this object.
no setteroverride
id String
Unique identifier for this pop overlay Used for finding, managing, and removing the overlay
final
initState Function?
final
isDraggeable bool
final
isDraggingController → _DragStateNotifier
Internal drag state controller using ValueNotifier for precise control Uses nullable bool: null = animations enabled, true = dragging, false = just finished dragging Only notifies listeners when transitioning to true or false, not when setting to null
final
offsetToPopFrom Offset?
Optional offset from which the popup should animate from When provided, the popup will animate from this global position to its final position (either center or popPositionOffset if provided)
final
onDismissed Function?
Optional callback function that runs when the overlay is dismissed Useful for cleanup or state updates after the overlay closes
final
onMadeInvisible Function?
final
padding EdgeInsetsGeometry?
final
popPositionAnimationDuration Duration?
final
popPositionOffset Offset?
final
positionController Injected<Offset>
Internal position controller for draggable functionality Tracks the current position offset of the popup
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shouldAnimatePopup bool
Whether to animate the popup when appearing/disappearing When false, the overlay appears and disappears instantly
final
shouldBlurBackground bool
Whether to apply a blur effect to content behind the overlay
final
shouldDismissOnBackgroundTap bool
Whether tapping the background should dismiss this overlay When true, allows users to tap outside the popup to dismiss it
final
shouldMakeInvisibleOnDismiss bool
final
shouldStartInvisible bool
Whether the popup should start in invisible state when first added When true and shouldMakeInvisibleOnDismiss is also true, the popup will be added to the invisible list immediately upon creation
final
widget Widget
The actual widget to display within the pop overlay
final

Methods

dispose() → void
Optimized dispose method to clean up resources
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
Memory-efficient equality check for duplicate prevention
override