import 'dart:developer'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; class ErrorNotifier extends GetxController { Rx showing = Rx(null); void logError(String msg, {StackTrace? trace}) { log('$msg${trace != null ? '\nTrace:\ntrace' : ''}'); showError(msg); } void showError(String msg) { showing.value = MaterialBanner( dividerColor: Colors.transparent, leading: const Icon(Icons.error), content: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'Something went wrong...', style: TextStyle(fontWeight: FontWeight.bold), ), Text(msg), ], ), actions: [ TextButton( onPressed: () { showing.value = null; }, child: const Text('Dismiss'), ), ], ); } }