initial code
This commit is contained in:
76
lib/utils/extensions/common_utils.dart
Normal file
76
lib/utils/extensions/common_utils.dart
Normal file
@@ -0,0 +1,76 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:grocery_app/utils/constants/globle_variable.dart';
|
||||
|
||||
|
||||
|
||||
|
||||
/// Hides soft keyboard if already shown
|
||||
///
|
||||
enum SnackType {
|
||||
success,
|
||||
alert,
|
||||
error
|
||||
}
|
||||
|
||||
|
||||
void hideKeyBoard() {
|
||||
FocusManager.instance.primaryFocus?.unfocus();
|
||||
}
|
||||
|
||||
|
||||
/// Show snackbar
|
||||
void showSnackBar(
|
||||
{ BuildContext ?context,
|
||||
required String message,
|
||||
SnackType snackType = SnackType.success,
|
||||
bool canDismiss = true,
|
||||
bool sticky = false,
|
||||
SnackBarBehavior behaviour = SnackBarBehavior.floating,
|
||||
}) {
|
||||
//if (!context?.mounted??) return;
|
||||
//Clear snack bars
|
||||
ScaffoldMessenger.of(context??GlobalVariable.globalScaffoldKey.currentContext!).clearSnackBars();
|
||||
// Snack bar
|
||||
final snackBar = SnackBar(
|
||||
behavior: behaviour,
|
||||
padding: EdgeInsets.zero,
|
||||
elevation: 0,
|
||||
content: Container(
|
||||
padding: EdgeInsets.symmetric(horizontal: 10.w, vertical: 8.h),
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
colors:snackType==SnackType.success? const [
|
||||
Color(0xFF61B15A),
|
||||
Color(0xFF6ABE8B)
|
||||
]:snackType==SnackType.alert?
|
||||
const [
|
||||
Color(0xFFFF8906),
|
||||
Color(0xFFFFA745),
|
||||
]:
|
||||
const [
|
||||
Colors.red,
|
||||
Colors.redAccent,
|
||||
],
|
||||
),
|
||||
),
|
||||
child: Text(
|
||||
message,
|
||||
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
duration: sticky ? const Duration(days: 365) : const Duration(seconds: 3),
|
||||
dismissDirection:
|
||||
canDismiss ? DismissDirection.down : DismissDirection.none,
|
||||
);
|
||||
|
||||
// Find the ScaffoldMessenger in the widget tree
|
||||
// and use it to show a SnackBar.
|
||||
ScaffoldMessenger.of(context??GlobalVariable.globalScaffoldKey.currentContext!).showSnackBar(snackBar);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user