smooth_sheets library
Comprehensive bottom sheet library supporting imperative and declarative navigation APIs, nested navigation, persistent and modal styles (including the iOS flavor), and more.
Classes
- AbsoluteSheetOffset
- A SheetOffset that represents a position with a fixed value in offset.
- AlwaysVisibleBottomBarVisibility
- The bottom bar is always visible regardless of the sheet's offset.
- BottomBarVisibility
- Defines how the SheetContentScaffold.bottomBar of SheetContentScaffold should be displayed in response to the bottom inset caused by system UI.
- BouncingSheetPhysics
- A SheetPhysics that allows the sheet to go beyond the offset bounds defined by SheetMetrics.minOffset and SheetMetrics.maxOffset.
- BoxSheetDecoration
- SheetDecoration that uses a DecoratedBox widget to decorate the sheet.
- ClampingSheetPhysics
- ConditionalBottomBarVisibility
- The visibility of the bottom bar is controlled by the isVisible callback.
- ControlledBottomBarVisibility
- The visibility of the bottom bar is controlled by the animation.
-
CupertinoModalSheetPage<
T> -
CupertinoModalSheetRoute<
T> - DefaultSheetController
- DragDownSheetKeyboardDismissBehavior
- A SheetKeyboardDismissBehavior that dismisses the on-screen keyboard only when the sheet is dragged down.
- DragSheetKeyboardDismissBehavior
- A SheetKeyboardDismissBehavior that always dismisses the on-screen keyboard when the sheet is dragged.
- DragUpSheetKeyboardDismissBehavior
- A SheetKeyboardDismissBehavior that dismisses the on-screen keyboard only when the sheet is dragged up.
- MaterialSheetDecoration
- SheetDecoration that uses a Material widget to decorate the sheet.
-
ModalSheetPage<
T> -
ModalSheetRoute<
T> - MultiSnapGrid
- NaturalBottomBarVisibility
- The bottom bar is displayed naturally, based on the sheet's offset.
- PagedSheet
-
PagedSheetPage<
T> - A Page for PagedSheet.
-
PagedSheetRoute<
T> - A Route for PagedSheet.
- PagedSheetRouteTheme
- An InheritedWidget that provides default route parameter values for PagedSheetRoutes and PagedSheetPages in a PagedSheet.
- PagedSheetRouteThemeData
- Holds default values for inheritable PagedSheetRoute and PagedSheetPage parameters in a PagedSheet.
- ProportionalToViewportSheetOffset
- A SheetOffset that is defined by a factor of the viewport size.
- RelativeSheetOffset
- A SheetOffset that represents a position proportional to the content height of the sheet.
- Sheet
- SheetContentScaffold
- The basic layout of the content in a Sheet.
- SheetController
- SheetDecoration
- SheetDecorationBuilder
- SheetDragCancelDetails
- Details for when a sheet drag is canceled.
- SheetDragCancelNotification
- A SheetNotification that is dispatched when the user or the system cancels a drag gesture in the sheet.
- SheetDragConfiguration
- Defines how a sheet should respond to drag gestures.
- SheetDragDetails
- Represents the details of a drag event on a sheet.
- SheetDragEndDetails
- Details for when a sheet drag ends.
- SheetDragEndNotification
- A SheetNotification that is dispatched when the user stops dragging the sheet.
- SheetDragStartDetails
- Details for the start of a sheet drag.
- SheetDragStartNotification
- A SheetNotification that is dispatched when the user starts dragging the sheet.
- SheetDragUpdateDetails
- Details about the update of a sheet drag gesture.
- SheetDragUpdateNotification
- A SheetNotification that is dispatched when the sheet is dragged.
- SheetKeyboardDismissBehavior
- Determines when the on-screen keyboard should be dismissed.
- SheetKeyboardDismissible
- A widget that dismisses the on-screen keyboard when the user drags the sheet below this widget.
- SheetLayout
- SheetLayoutSpec
- Geometry of the viewport and the layout constraints used to lay out the sheet and its content.
- SheetMediaQuery
- Stores the geometry of the viewport and the layout constraints used to lay out the sheet and its content.
- SheetNotification
- A Notification that is dispatched when the sheet position changes.
- SheetOffset
- An abstract representation of a sheet's position.
- SheetOffsetDrivenAnimation
- SheetOverflowNotification
- A SheetNotification that is dispatched when the user tries to drag the sheet beyond its draggable bounds but the sheet has not changed its position because its SheetPhysics does not allow it to be.
- SheetPhysics
-
SheetPopScope<
T> - Manages the back navigation gesture for the current modal sheet.
- SheetScrollable
- Wires an ancestor sheet and its scrollable content below this widget.
- SheetScrollConfiguration
- Defines how the sheet integrates with scrollable content.
- SheetScrollController
- The ScrollController for scrollable content in a sheet.
- SheetSnapGrid
- SheetUpdateNotification
- A SheetNotification that is dispatched when the sheet position is updated by other than user interaction such as animation.
- SheetViewport
- SingleSnapGrid
- SizedSheetDecoration
- SteplessSnapGrid
- SwipeDismissSensitivity
- Configuration for the swipe-to-dismiss sensitivity of ModalSheetRoute, ModalSheetPage, and related classes.
- ViewportLayout
Enums
- SheetScrollHandlingBehavior
- Defines how the sheet position is synced with scroll gestures performed on a scrollable content.
- SheetSize
Mixins
-
ModalSheetRouteMixin<
T> - SheetMetrics
- The metrics of a sheet.
- SheetPhysicsMixin
- A mixin that provides default implementations for SheetPhysics methods.
Constants
- kDefaultSheetPhysics → const BouncingSheetPhysics
- The default SheetPhysics used by sheet widgets.
Functions
-
showAdaptiveModalSheet<
T> ({required BuildContext context, required WidgetBuilder builder, bool barrierDismissible = true, bool swipeDismissible = false, String? barrierLabel, Color? barrierColor, Duration? transitionDuration, Curve? transitionCurve, SwipeDismissSensitivity swipeDismissSensitivity = const SwipeDismissSensitivity(), RouteSettings? routeSettings}) → Future< T?> - Pushes a platform-appropriate modal sheet onto the navigator's stack.
-
showCupertinoModalSheet<
T> ({required BuildContext context, required WidgetBuilder builder, bool maintainState = true, bool barrierDismissible = true, bool swipeDismissible = false, String? barrierLabel, Color? barrierColor, Duration? transitionDuration, Curve? transitionCurve, SwipeDismissSensitivity swipeDismissSensitivity = const SwipeDismissSensitivity(), RouteSettings? routeSettings}) → Future< T?> - Pushes a CupertinoModalSheetRoute onto the navigator's stack.
-
showModalSheet<
T> ({required BuildContext context, required WidgetBuilder builder, bool maintainState = true, bool barrierDismissible = true, bool swipeDismissible = false, bool fullscreenDialog = false, String? barrierLabel, Color? barrierColor, Duration? transitionDuration, Curve? transitionCurve, SwipeDismissSensitivity swipeDismissSensitivity = const SwipeDismissSensitivity(), EdgeInsets viewportPadding = EdgeInsets.zero, RouteSettings? routeSettings}) → Future< T?> - Pushes a ModalSheetRoute onto the navigator's stack.
Typedefs
- CupertinoSheetViewportBuilder = Widget Function(BuildContext context, double preferredTopInset, Widget child)
-
Signature of callbacks that build an SheetViewport
for the
childsheet widget. -
ModalSheetBarrierBuilder<
T> = Widget Function(ModalRoute< T> route, VoidCallback onDismissCallback) - A builder for creating a custom modal barrier.
-
SheetLayoutListenable
= ValueListenable<
SheetLayout?> - SheetViewportBuilder = Widget Function(BuildContext context, Widget child)