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