showErrorSnackbar function
void
showErrorSnackbar(
- String text
)
Implementation
void showErrorSnackbar(String text) {
final Color backgroundColor =
MyStyles.pupauTheme(!Get.isDarkMode).redAlarm;
// Prefer original GetX snackbar when overlay is available (host app uses
// GetMaterialApp), so behavior matches exactly.
if (Get.overlayContext != null) {
Get.snackbar(
'',
'',
duration: const Duration(seconds: 5),
backgroundColor: backgroundColor,
padding:
const EdgeInsets.only(right: 20, left: 20, top: 6, bottom: 12),
barBlur: 5,
messageText: SnackbarErrorContainer(text: text),
titleText: const SizedBox(),
onTap: (snack) {
Get.closeCurrentSnackbar();
},
snackPosition: SnackPosition.TOP,
);
return;
}
// Fallback for host apps that do not use GetX navigation / GetMaterialApp.
BuildContext? context;
if (Get.isRegistered<PupauChatController>()) {
context = Get.find<PupauChatController>().safeContext;
}
context ??= Get.context;
if (context == null) return;
final double bottomMargin = MediaQuery.of(context).size.height - 150;
final snackBar = SnackBar(
behavior: SnackBarBehavior.floating,
backgroundColor: backgroundColor,
elevation: 6,
margin: EdgeInsets.only(
left: 16,
right: 16,
top: 16,
bottom: bottomMargin,
),
duration: const Duration(seconds: 5),
content: SnackbarErrorContainer(text: text),
);
ScaffoldMessenger.of(context).showSnackBar(snackBar);
}