mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-06-29 18:38:36 +08:00
PurchaseScreen: Allow it to be scrolled
Maybe for really small screens?
This commit is contained in:
@ -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,
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user