FadeModalBarrier class
A modal barrier that fades in/out with an animated opacity.
In terminal layouts there is no true alpha compositing, so when this widget has real child content it blends that content toward the barrier color in place rather than painting an opaque colored layer above it. When used as a standalone overlay with an empty child, it falls back to painting a full-screen barrier layer.
When visible, it covers the entire parent area and optionally dismisses on tap. Uses AnimationMixin to animate the opacity transition.
FadeModalBarrier(
visible: _showBarrier,
color: Colors.black,
opacity: 0.6,
duration: Duration(milliseconds: 300),
onDismiss: () => setState(() => _showBarrier = false),
child: myContent,
)
- Inheritance
-
- Object
- Widget
- StatefulWidget
- FadeModalBarrier
Constructors
- FadeModalBarrier({required Widget child, bool visible = false, Color? color, double opacity = 0.6, Duration duration = const Duration(milliseconds: 300), CmdCallback? onDismiss, bool dismissible = true, Key? key})
Properties
- accessibilityLabel → String?
-
Optional accessibility label.
no setterinherited
- accessibilityRole → String
-
Optional accessibility role.
no setterinherited
- child → Widget
-
The content behind the barrier.
final
-
children
→ List<
Widget> -
Child widgets that receive forwarded messages.
no setterinherited
- color → Color?
-
The barrier color. Defaults to the theme background color.
final
- debugRenderObjectPassthrough → bool
-
Whether this widget is intentionally transparent to render-object layouts.
no setterinherited
- degradationSignal → WidgetDegradationSignal
-
Signal that controls this widget's render budget behavior.
no setterinherited
- dismissible → bool
-
Whether the barrier can be dismissed by tapping.
final
- duration → Duration
-
Duration of the fade animation.
final
- focusable → bool
-
Whether this widget can receive keyboard focus.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- id → String
-
Unique identifier for this widget.
no setterinherited
- key → Key?
-
Key for preserving widget identity.
finalinherited
- onDismiss → CmdCallback?
-
Callback when the barrier is tapped (for dismissal).
final
- opacity → double
-
Maximum opacity of the barrier when fully visible.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- theme → Theme
-
Access the current theme.
no setterinherited
- visible → bool
-
Whether the barrier is visible.
final
Methods
-
buildCachedView<
T> (T builder(), Object? cacheKey) → T -
Returns a cached view if the cache key matches.
inherited
-
createState(
) → State< FadeModalBarrier> -
Creates the mutable State associated with this widget.
override
-
handleInit(
) → Cmd? -
Override this instead of init for widget-specific initialization.
inherited
-
handleIntercept(
Msg msg) → (Widget, Cmd?) -
Override this to handle messages before they reach children.
inherited
-
handleUpdate(
Msg msg) → (Widget, Cmd?) -
Override this to handle messages specific to this widget.
inherited
-
init(
) → Cmd? -
Called once when the widget is first mounted.
inherited
-
invalidateCachedView(
) → void -
Clears any cached view for this widget.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
shouldRenderAt(
DegradationLevel degradationLevel, {required bool subtreeHasFocusedWidget}) → bool -
Whether this widget should participate in the current render when
degradationLevelis active.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
update(
Msg msg) → (Model, Cmd?) -
Handles messages by forwarding to children then calling handleUpdate.
inherited
-
view(
) → Object -
Renders the widget to a string or View.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited