diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 930685c..734379e 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -61,5 +61,8 @@ "light": "Light", "dark": "Dark", "systemDefined": "System defined", - "close": "Close" + "close": "Close", + "connectedTo": "Connected to:", + "selectedServer": "Selected server:", + "noServerSelected": "No server selected" } \ No newline at end of file diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index fa946be..380feab 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -61,5 +61,8 @@ "light": "Claro", "dark": "Oscuro", "systemDefined": "Definido por el sistema", - "close": "Cerrar" + "close": "Cerrar", + "connectedTo": "Conectado a:", + "selectedServer": "Servidor seleccionado:", + "noServerSelected": "No hay servidor seleccionado" } \ No newline at end of file diff --git a/lib/screens/settings/settings.dart b/lib/screens/settings/settings.dart index 17422aa..e9bcab5 100644 --- a/lib/screens/settings/settings.dart +++ b/lib/screens/settings/settings.dart @@ -5,7 +5,9 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:adguard_home_manager/screens/settings/theme_modal.dart'; import 'package:adguard_home_manager/screens/settings/custom_list_tile.dart'; import 'package:adguard_home_manager/screens/settings/section_label.dart'; +import 'package:adguard_home_manager/screens/servers/servers.dart'; +import 'package:adguard_home_manager/providers/servers_provider.dart'; import 'package:adguard_home_manager/providers/app_config_provider.dart'; class Settings extends StatelessWidget { @@ -14,6 +16,7 @@ class Settings extends StatelessWidget { @override Widget build(BuildContext context) { final appConfigProvider = Provider.of(context); + final serversProvider = Provider.of(context); final statusBarHeight = MediaQuery.of(context).viewInsets.top; @@ -45,6 +48,14 @@ class Settings extends StatelessWidget { ); } + void navigateServers() { + Future.delayed(const Duration(milliseconds: 0), (() { + Navigator.of(context).push( + MaterialPageRoute(builder: (context) => const Servers()) + ); + })); + } + return ListView( children: [ SectionLabel(label: AppLocalizations.of(context)!.appSettings), @@ -54,6 +65,16 @@ class Settings extends StatelessWidget { description: getThemeString(), onTap: openThemeModal, ), + CustomListTile( + leadingIcon: Icons.storage_rounded, + label: AppLocalizations.of(context)!.servers, + description: serversProvider.selectedServer != null + ? serversProvider.serverStatus.data != null + ? "${AppLocalizations.of(context)!.connectedTo} ${serversProvider.selectedServer!.name}" + : "${AppLocalizations.of(context)!.selectedServer} ${serversProvider.selectedServer!.name}" + : AppLocalizations.of(context)!.noServerSelected, + onTap: navigateServers, + ), ], ); }