diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index b5f9772..ec90670 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -95,5 +95,9 @@ "clientAddedSuccessfully": "Client added to the list successfully", "addingClient": "Adding client...", "clientNotAdded": "Client could not be added to the list", - "clientAnotherList": "This client is yet in another list" + "clientAnotherList": "This client is yet in another list", + "noSavedLogs": "No saved logs", + "logs": "Logs", + "copyLogsClipboard": "Copy logs to clipboard", + "logsCopiedClipboard": "Logs copied to clipboard" } \ No newline at end of file diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index c5cbb1c..14d2e49 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -95,5 +95,9 @@ "clientAddedSuccessfully": "Cliente añadido a la lista satisfactoriamente", "addingClient": "Añadiendo cliente...", "clientNotAdded": "El cliente no se pudo añadir a la lista", - "clientAnotherList": "El cliente ya está en otra lista" + "clientAnotherList": "El cliente ya está en otra lista", + "noSavedLogs": "No hay logs guardados", + "logs": "Registros", + "copyLogsClipboard": "Copiar logs al portapapeles", + "logsCopiedClipboard": "Registros copiados al portapapeles" } \ No newline at end of file diff --git a/lib/screens/app_logs/app_logs.dart b/lib/screens/app_logs/app_logs.dart index f5fb712..78c3f34 100644 --- a/lib/screens/app_logs/app_logs.dart +++ b/lib/screens/app_logs/app_logs.dart @@ -2,10 +2,12 @@ import 'dart:convert'; -import 'package:adguard_home_manager/screens/app_logs/app_log_details_modal.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:provider/provider.dart'; +import 'package:flutter_gen/gen_l10n/app_localizations.dart'; + +import 'package:adguard_home_manager/screens/app_logs/app_log_details_modal.dart'; import 'package:adguard_home_manager/providers/app_config_provider.dart'; @@ -22,8 +24,8 @@ class AppLogs extends StatelessWidget { ClipboardData(text: jsonEncode(logsString)) ); ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text("Logs copied to the clipboard"), + SnackBar( + content: Text(AppLocalizations.of(context)!.logsCopiedClipboard), backgroundColor: Colors.black, ) ); @@ -31,14 +33,14 @@ class AppLogs extends StatelessWidget { return Scaffold( appBar: AppBar( - title: const Text("Logs"), + title: Text(AppLocalizations.of(context)!.logs), actions: [ IconButton( onPressed: appConfigProvider.logs.isNotEmpty ? copyLogsClipboard : null, icon: const Icon(Icons.share), - tooltip: "Copy logs to clipboard", + tooltip: AppLocalizations.of(context)!.copyLogsClipboard, ), const SizedBox(width: 10), ], @@ -61,10 +63,10 @@ class AppLogs extends StatelessWidget { }, ) ) - : const Center( + : Center( child: Text( - "No saved logs", - style: TextStyle( + AppLocalizations.of(context)!.noSavedLogs, + style: const TextStyle( fontSize: 24, color: Colors.grey, ), diff --git a/lib/screens/settings/custom_list_tile.dart b/lib/screens/settings/custom_list_tile.dart index 34d5906..8da0943 100644 --- a/lib/screens/settings/custom_list_tile.dart +++ b/lib/screens/settings/custom_list_tile.dart @@ -9,6 +9,7 @@ class CustomListTile extends StatelessWidget { final void Function()? onDoubleTap; final Widget? trailing; final EdgeInsets? padding; + final bool? disableRipple; const CustomListTile({ Key? key, @@ -19,7 +20,8 @@ class CustomListTile extends StatelessWidget { this.onTap, this.onDoubleTap, this.trailing, - this.padding + this.padding, + this.disableRipple }) : super(key: key); @override @@ -29,6 +31,9 @@ class CustomListTile extends StatelessWidget { child: InkWell( onTap: onTap, onDoubleTap: onDoubleTap, + splashFactory: disableRipple == true + ? NoSplash.splashFactory + : null, child: Container( padding: padding ?? const EdgeInsets.symmetric( vertical: 10, diff --git a/lib/screens/settings/settings.dart b/lib/screens/settings/settings.dart index 3c92a82..5f30089 100644 --- a/lib/screens/settings/settings.dart +++ b/lib/screens/settings/settings.dart @@ -81,13 +81,14 @@ class Settings extends StatelessWidget { CustomListTile( label: AppLocalizations.of(context)!.appVersion, description: appConfigProvider.getAppInfo!.version, + onDoubleTap: () => Navigator.of(context).push( + MaterialPageRoute(builder: (context) => const AppLogs()) + ), + disableRipple: true, ), CustomListTile( label: AppLocalizations.of(context)!.createdBy, description: "JGeek00", - onDoubleTap: () => Navigator.of(context).push( - MaterialPageRoute(builder: (context) => const AppLogs()) - ), ), ], );