PurchaseScreen: Allow it to be scrolled

Maybe for really small screens?
This commit is contained in:
Vishesh Handa
2020-04-14 16:31:17 +02:00
parent e117c19add
commit f79fc52a89

View File

@ -1,4 +1,5 @@
import 'dart:async';
import 'dart:math';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
@ -101,9 +102,8 @@ class _PurchaseScreenState extends State<PurchaseScreen> {
mainAxisAlignment: MainAxisAlignment.spaceAround,
);
w = Container(
w = _SingleChildScrollViewExpanded(
child: SafeArea(child: w),
color: theme.scaffoldBackgroundColor,
padding: const EdgeInsets.all(16.0),
);
@ -237,3 +237,26 @@ class EmptyAppBar extends StatelessWidget implements PreferredSizeWidget {
@override
Size get preferredSize => const Size(0.0, 0.0);
}
class _SingleChildScrollViewExpanded extends StatelessWidget {
final Widget child;
final EdgeInsetsGeometry padding;
_SingleChildScrollViewExpanded({this.child, this.padding});
@override
Widget build(BuildContext context) {
return LayoutBuilder(
builder: (BuildContext context, BoxConstraints constraints) {
return SingleChildScrollView(
child: ConstrainedBox(
constraints: BoxConstraints.tightFor(
height: max(100, constraints.maxHeight)),
child: child,
),
padding: padding,
);
},
);
}
}