AppBar looks up its scaffold with nullOk: true (#9160)
This commit is contained in:
parent
58ddde88f4
commit
bb5351b7c2
@ -336,7 +336,7 @@ class _AppBarState extends State<AppBar> {
|
|||||||
@override
|
@override
|
||||||
void didChangeDependencies() {
|
void didChangeDependencies() {
|
||||||
super.didChangeDependencies();
|
super.didChangeDependencies();
|
||||||
final ScaffoldState scaffold = Scaffold.of(context);
|
final ScaffoldState scaffold = Scaffold.of(context, nullOk: true);
|
||||||
_hasDrawer = scaffold?.hasDrawer ?? false;
|
_hasDrawer = scaffold?.hasDrawer ?? false;
|
||||||
_canPop = ModalRoute.of(context)?.canPop ?? false;
|
_canPop = ModalRoute.of(context)?.canPop ?? false;
|
||||||
}
|
}
|
||||||
|
@ -246,6 +246,25 @@ void main() {
|
|||||||
expect(tester.getSize(title).width, equals(620.0));
|
expect(tester.getSize(title).width, equals(620.0));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
testWidgets('AppBar with no Scaffold', (WidgetTester tester) async {
|
||||||
|
await tester.pumpWidget(
|
||||||
|
new SizedBox(
|
||||||
|
height: kToolbarHeight,
|
||||||
|
child: new AppBar(
|
||||||
|
leading: new Text('L'),
|
||||||
|
title: new Text('No Scaffold'),
|
||||||
|
actions: <Widget>[new Text('A1'), new Text('A2')],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
expect(find.text('L'), findsOneWidget);
|
||||||
|
expect(find.text('No Scaffold'), findsOneWidget);
|
||||||
|
expect(find.text('A1'), findsOneWidget);
|
||||||
|
expect(find.text('A2'), findsOneWidget);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
testWidgets('AppBar render at zero size', (WidgetTester tester) async {
|
testWidgets('AppBar render at zero size', (WidgetTester tester) async {
|
||||||
await tester.pumpWidget(
|
await tester.pumpWidget(
|
||||||
new Center(
|
new Center(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user