chore: add on dismiss callback to HowToPlayDialog

pull/254/head
arturplaczek 3 years ago
parent d54beef599
commit 3f150c77a3

@ -4,25 +4,40 @@ import 'package:flutter/material.dart';
import 'package:pinball/l10n/l10n.dart'; import 'package:pinball/l10n/l10n.dart';
class HowToPlayDialog extends StatelessWidget { class HowToPlayDialog extends StatelessWidget {
const HowToPlayDialog({Key? key}) : super(key: key); const HowToPlayDialog({
Key? key,
required this.onDismissCallback,
}) : super(key: key);
final VoidCallback onDismissCallback;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final l10n = context.l10n; final l10n = context.l10n;
const spacing = SizedBox(height: 16); const spacing = SizedBox(height: 16);
return Dialog( return WillPopScope(
child: Padding( onWillPop: () {
padding: const EdgeInsets.all(20), Future.delayed(
child: Column( kThemeAnimationDuration,
mainAxisSize: MainAxisSize.min, onDismissCallback.call,
children: [ );
Text(l10n.howToPlay),
spacing, return Future.value(true);
const _LaunchControls(), },
spacing, child: Dialog(
const _FlipperControls(), child: Padding(
], padding: const EdgeInsets.all(20),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Text(l10n.howToPlay),
spacing,
const _LaunchControls(),
spacing,
const _FlipperControls(),
],
),
), ),
), ),
); );

@ -9,7 +9,11 @@ import '../../helpers/helpers.dart';
void main() { void main() {
group('HowToPlayDialog', () { group('HowToPlayDialog', () {
testWidgets('displays dialog', (tester) async { testWidgets('displays dialog', (tester) async {
await tester.pumpApp(HowToPlayDialog()); await tester.pumpApp(
HowToPlayDialog(
onDismissCallback: () {},
),
);
expect(find.byType(Dialog), findsOneWidget); expect(find.byType(Dialog), findsOneWidget);
}); });

Loading…
Cancel
Save