Sheets topic
Sheets
showSheenSheet opens a sheet with two heights, a grabber and a header; showSheenCustomSheet lets you draw the
whole surface. showSheenDateSheet picks a date on wheels, showSheenDocumentSheet shows long text, and
SheenFormSheet turns a page into a centred card on tablets.

Classes
- SheenDateWheels Sheets
- Day, month and year wheels, as showSheenDateSheet shows them; usable on their own in a page.
- SheenDetentHaptics Sheets
- A light tap when a dragged sheet reaches one of its detents, as iOS sheets give; nothing while it opens.
- SheenFormSheet Sheets
- A form page that becomes a centred card on wide windows.
- SheenNested Sheets
- Marks a subtree on a raised ground, such as a sheet: lists and fields inside it take SheenColors.surfaceMuted instead of SheenColors.surface, so they stay apart from the ground.
- SheenSheetBody Sheets
- The surface of a sheet: the grabber, a header with a close button, the title and Done (or trailing), and the content, marked SheenNested. For showSheenCustomSheet.
-
SheenSheetRoute<
T> Sheets - The route behind showSheenSheet and showSheenCustomSheet, for apps that push routes themselves.
Functions
-
showSheenCustomSheet<
T> ({required BuildContext context, required Widget builder(BuildContext sheetContext, ScrollController scroll), double medium = .55, double large = .92, bool startLarge = true, }) → Future< SheetsT?> -
Opens a sheet whose whole surface
builderdraws, usually a SheenSheetBody whose header it controls itself (for example a Done button that waits for a valid choice). The presentation is that of showSheenSheet, and so isuseRootNavigator. -
showSheenDateSheet(
{required BuildContext context, required String title, required DateTime first, required DateTime last, DateTime? initial, List< SheetsString> ? monthLabels, SheenDateOrder order = SheenDateOrder.dayMonthYear, String? doneLabel, String? cancelLabel}) → Future<DateTime?> - Opens a sheet with day, month and year wheels and returns the date shown when Done is tapped, or null when the sheet is closed.
-
showSheenDocumentSheet(
BuildContext context, {required String title, String? text, List< SheetsWidget> children = const [], String? closeLabel}) → Future<void> - Opens a long text, such as terms or a policy, in a large sheet with a close button.
-
showSheenSheet<
T> ({required BuildContext context, required String title, required Widget builder(BuildContext sheetContext, ScrollController scroll), String? cancelLabel, String? doneLabel, VoidCallback? onDone, String? subtitle, double medium = .55, double large = .92, bool startLarge = true, }) → Future< SheetsT?> -
Opens a sheet with a header: a grabber, a close button, the
titleand, whendoneLabelis given, a prominent Done button. It has two heights (detents),mediumandlarge(fractions of the screen), snaps between them and closes when dragged down or when the dim behind it is tapped.
Enums
- SheenDateOrder Sheets
- The order of the wheels in showSheenDateSheet.