flutter-vienna-hackathon-25/wien_talks/wien_talks_flutter/lib/widgets/screen_widget.dart
2025-08-16 17:06:04 +02:00

55 lines
1.7 KiB
Dart

import 'dart:math';
import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:loader_overlay/loader_overlay.dart';
class ScreenWidget extends StatelessWidget {
final Widget child;
const ScreenWidget({super.key, required this.child});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('FunMap'),
),
// floatingActionButton: AddQuoteFab(),
body: SafeArea(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: LoaderOverlay(
overlayWidgetBuilder: (_) {
switch (Random().nextInt(5)) {
case 0:
return Center(
child: CircularProgressIndicator(),
);
case 1:
return Center(
child: SpinKitCubeGrid(size: 50, color: Theme.of(context).primaryColor),
);
case 2:
return Center(
child: SpinKitWave(color: Theme.of(context).primaryColor),
);
case 3:
return Center(
child: SpinKitHourGlass(color: Theme.of(context).primaryColor),
);
case 4:
return Center(
child: SpinKitFadingCircle(color: Theme.of(context).primaryColor),
);
default:
return Center(
child: SpinKitPulsingGrid(color: Theme.of(context).primaryColor),
);
}
},
child: child),
)),
);
}
}