forked from kherel/selfprivacy.org.app
add error observer
parent
a8262229c0
commit
cf6e0b3495
@ -0,0 +1,23 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:selfprivacy/ui/components/error/error.dart';
|
||||
import 'package:selfprivacy/utils/route_transitions/basic.dart';
|
||||
|
||||
class SimpleBlocObserver extends BlocObserver {
|
||||
final GlobalKey<NavigatorState> navigatorKey;
|
||||
|
||||
SimpleBlocObserver({this.navigatorKey});
|
||||
|
||||
@override
|
||||
void onError(Cubit cubit, Object error, StackTrace stackTrace) {
|
||||
navigatorKey.currentState.push(
|
||||
materialRoute(
|
||||
BrandError(
|
||||
error: error,
|
||||
stackTrace: stackTrace,
|
||||
),
|
||||
),
|
||||
);
|
||||
super.onError(cubit, error, stackTrace);
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
|
||||
class BrandError extends StatelessWidget {
|
||||
const BrandError({Key key, this.error, this.stackTrace}) : super(key: key);
|
||||
|
||||
final Object error;
|
||||
final StackTrace stackTrace;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SafeArea(
|
||||
child: Scaffold(
|
||||
body: Center(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(error.toString()),
|
||||
Text('stackTrace: '),
|
||||
Text(stackTrace.toString()),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue