Files
umbrix/lib/utils/bottom_sheet_page.dart
problematicconsumer b9eae35fda Fix ui bugs
2023-11-10 15:35:44 +03:30

33 lines
741 B
Dart

import 'package:flutter/material.dart';
class BottomSheetPage extends Page {
const BottomSheetPage({
super.key,
super.name,
required this.builder,
this.fixed = false,
});
final Widget Function(ScrollController? controller) builder;
final bool fixed;
@override
Route<void> createRoute(BuildContext context) {
return ModalBottomSheetRoute(
settings: this,
isScrollControlled: true,
useSafeArea: true,
showDragHandle: true,
builder: (_) {
if (!fixed) {
return DraggableScrollableSheet(
expand: false,
builder: (_, scrollController) => builder(scrollController),
);
}
return builder(null);
},
);
}
}