Improved snackbars
This commit is contained in:
@@ -1,23 +1,18 @@
|
||||
// ignore_for_file: use_build_context_synchronously
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
import 'package:linkdy/constants/global_keys.dart';
|
||||
|
||||
void copyToClipboard({
|
||||
required GlobalKey<ScaffoldMessengerState> key,
|
||||
required String value,
|
||||
required String successMessage,
|
||||
}) async {
|
||||
if (scaffoldMessengerGlobalKey.currentState != null) {
|
||||
await Clipboard.setData(
|
||||
ClipboardData(text: value),
|
||||
);
|
||||
scaffoldMessengerGlobalKey.currentState!.showSnackBar(
|
||||
SnackBar(
|
||||
content: Text(successMessage),
|
||||
backgroundColor: Colors.green,
|
||||
),
|
||||
);
|
||||
}
|
||||
await Clipboard.setData(
|
||||
ClipboardData(text: value),
|
||||
);
|
||||
key.currentState!.showSnackBar(
|
||||
SnackBar(
|
||||
content: Text(successMessage),
|
||||
backgroundColor: Colors.green,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
17
lib/utils/snackbar.dart
Normal file
17
lib/utils/snackbar.dart
Normal file
@@ -0,0 +1,17 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
void showSnackbar({
|
||||
required GlobalKey<ScaffoldMessengerState> key,
|
||||
required String label,
|
||||
required Color color,
|
||||
Color? labelColor,
|
||||
}) {
|
||||
final snackBar = SnackBar(
|
||||
content: Text(
|
||||
label,
|
||||
style: TextStyle(color: labelColor ?? Colors.white),
|
||||
),
|
||||
backgroundColor: color,
|
||||
);
|
||||
key.currentState?.showSnackBar(snackBar);
|
||||
}
|
||||
Reference in New Issue
Block a user