Fixed show snackbar error

This commit is contained in:
Juan Gilsanz Polo 2023-06-06 00:14:48 +02:00
parent 9a1ffa43f4
commit 89aa022f2d
6 changed files with 13 additions and 20 deletions

View file

@ -3,18 +3,21 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:adguard_home_manager/config/globals.dart';
void copyToClipboard({ void copyToClipboard({
required BuildContext context,
required String value, required String value,
required String successMessage required String successMessage
}) async { }) async {
await Clipboard.setData( if (scaffoldMessengerKey.currentState != null) {
ClipboardData(text: value) await Clipboard.setData(
); ClipboardData(text: value)
ScaffoldMessenger.of(context).showSnackBar( );
SnackBar( scaffoldMessengerKey.currentState!.showSnackBar(
content: Text(successMessage), SnackBar(
backgroundColor: Colors.green, content: Text(successMessage),
) backgroundColor: Colors.green,
); )
);
}
} }

View file

@ -35,7 +35,6 @@ class ActiveClientTile extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
action: () { action: () {
copyToClipboard( copyToClipboard(
context: context,
value: client.name != '' value: client.name != ''
? client.name! ? client.name!
: client.ip, : client.ip,
@ -58,7 +57,6 @@ class ActiveClientTile extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
onTap: () { onTap: () {
copyToClipboard( copyToClipboard(
context: context,
value: client.name != '' value: client.name != ''
? client.name! ? client.name!
: client.ip, : client.ip,
@ -137,7 +135,6 @@ class ActiveClientTile extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
onTap: () { onTap: () {
copyToClipboard( copyToClipboard(
context: context,
value: client.name != '' value: client.name != ''
? client.name! ? client.name!
: client.ip, : client.ip,

View file

@ -55,7 +55,6 @@ class AddedClientTile extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
onTap: () { onTap: () {
copyToClipboard( copyToClipboard(
context: context,
value: client.ids.toString().replaceAll(RegExp(r'^\[|\]$'), ''), value: client.ids.toString().replaceAll(RegExp(r'^\[|\]$'), ''),
successMessage: AppLocalizations.of(context)!.copiedClipboard, successMessage: AppLocalizations.of(context)!.copiedClipboard,
); );
@ -189,7 +188,6 @@ class AddedClientTile extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
onTap: () { onTap: () {
copyToClipboard( copyToClipboard(
context: context,
value: client.ids.toString().replaceAll(RegExp(r'^\[|\]$'), ''), value: client.ids.toString().replaceAll(RegExp(r'^\[|\]$'), ''),
successMessage: AppLocalizations.of(context)!.copiedClipboard, successMessage: AppLocalizations.of(context)!.copiedClipboard,
); );

View file

@ -249,7 +249,6 @@ class FiltersTripleColumn extends StatelessWidget {
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
onTap: () { onTap: () {
copyToClipboard( copyToClipboard(
context: context,
value: filteringProvider.filtering!.userRules[index], value: filteringProvider.filtering!.userRules[index],
successMessage: AppLocalizations.of(context)!.copiedClipboard, successMessage: AppLocalizations.of(context)!.copiedClipboard,
); );
@ -266,7 +265,6 @@ class FiltersTripleColumn extends StatelessWidget {
title: AppLocalizations.of(context)!.copyClipboard, title: AppLocalizations.of(context)!.copyClipboard,
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
action: () => copyToClipboard( action: () => copyToClipboard(
context: context,
value: filteringProvider.filtering!.userRules[index], value: filteringProvider.filtering!.userRules[index],
successMessage: AppLocalizations.of(context)!.copiedClipboard, successMessage: AppLocalizations.of(context)!.copiedClipboard,
) )

View file

@ -87,7 +87,6 @@ class ListOptionsMenu extends StatelessWidget {
onTap: () { onTap: () {
Navigator.pop(context); // Closes the context menu Navigator.pop(context); // Closes the context menu
copyToClipboard( copyToClipboard(
context: context,
value: list.url, value: list.url,
successMessage: AppLocalizations.of(context)!.listUrlCopied successMessage: AppLocalizations.of(context)!.listUrlCopied
); );
@ -114,7 +113,6 @@ class ListOptionsMenu extends StatelessWidget {
title: AppLocalizations.of(context)!.copyListUrl, title: AppLocalizations.of(context)!.copyListUrl,
icon: Icons.copy_rounded, icon: Icons.copy_rounded,
action: () => copyToClipboard( action: () => copyToClipboard(
context: context,
value: list.url, value: list.url,
successMessage: AppLocalizations.of(context)!.listUrlCopied successMessage: AppLocalizations.of(context)!.listUrlCopied
) )

View file

@ -25,7 +25,6 @@ class AppLogs extends StatelessWidget {
IconButton( IconButton(
onPressed: appConfigProvider.logs.isNotEmpty onPressed: appConfigProvider.logs.isNotEmpty
? () => copyToClipboard( ? () => copyToClipboard(
context: context,
value: jsonEncode(appConfigProvider.logs.map((log) => log.toMap()).toList()), value: jsonEncode(appConfigProvider.logs.map((log) => log.toMap()).toList()),
successMessage: AppLocalizations.of(context)!.logsCopiedClipboard successMessage: AppLocalizations.of(context)!.logsCopiedClipboard
) )