diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index f203286..38526a3 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -653,5 +653,7 @@ "queries": "Queries", "adultSites": "Adult sites", "quickFilters": "Quick filters", - "searchDomainInternet": "Search domain on the Internet" + "searchDomainInternet": "Search domain on the Internet", + "hideServerAddress": "Hide server address", + "hideServerAddressDescription": "Hides the server address on the home screen" } \ No newline at end of file diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index ab71f10..383a4b0 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -653,5 +653,7 @@ "queries": "Peticiones", "adultSites": "Sitios de adultos", "quickFilters": "Filtros rápidos", - "searchDomainInternet": "Buscar dominio en internet" + "searchDomainInternet": "Buscar dominio en internet", + "hideServerAddress": "Ocultar dirección del servidor", + "hideServerAddressDescription": "Oculta la dirección del servidor en la pantalla de inicio" } \ No newline at end of file diff --git a/lib/providers/app_config_provider.dart b/lib/providers/app_config_provider.dart index eefab88..cf4fc0e 100644 --- a/lib/providers/app_config_provider.dart +++ b/lib/providers/app_config_provider.dart @@ -38,6 +38,8 @@ class AppConfigProvider with ChangeNotifier { List _homeTopItemsOrder = homeTopItemsDefaultOrder; + int _hideServerAddress = 0; + final List _logs = []; int _overrideSslCheck = 0; @@ -162,6 +164,10 @@ class AppConfigProvider with ChangeNotifier { return _homeTopItemsOrder; } + bool get hideServerAddress { + return _hideServerAddress == 1 ? true : false; + } + void setDbInstance(Database db) { _dbInstance = db; } @@ -380,6 +386,23 @@ class AppConfigProvider with ChangeNotifier { } } + Future setHideServerAddress(bool value) async { + final updated = await updateConfigQuery( + db: _dbInstance!, + column: 'hideServerAddress', + value: value == true ? 1 : 0 + ); + if (updated == true) { + _hideServerAddress = value == true ? 1 : 0; + notifyListeners(); + return true; + } + else { + return false; + } + } + + Future setDoNotRememberVersion(String value) async { final updated = await updateConfigQuery( db: _dbInstance!, @@ -400,6 +423,7 @@ class AppConfigProvider with ChangeNotifier { _doNotRememberVersion = dbData['doNotRememberVersion']; _showIpLogs = dbData['showIpLogs'] ?? 0; _combinedChartHome = dbData['combinedChart'] ?? 0; + _hideServerAddress = dbData['hideServerAddress']; if (dbData['homeTopItemsOrder'] != null) { try { _homeTopItemsOrder = List.from( diff --git a/lib/screens/home/appbar.dart b/lib/screens/home/appbar.dart index 675dafd..8660f54 100644 --- a/lib/screens/home/appbar.dart +++ b/lib/screens/home/appbar.dart @@ -90,18 +90,20 @@ class HomeAppBar extends StatelessWidget { if (serversProvider.selectedServer != null) ...[ Text( server!.name, - style: const TextStyle( + style: !appConfigProvider.hideServerAddress ? const TextStyle( fontSize: 20 - ), + ) : null, ), - const SizedBox(height: 5), - Text( - "${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", - style: TextStyle( - fontSize: 14, - color: Theme.of(context).listTileTheme.textColor - ), - ) + if (!appConfigProvider.hideServerAddress) ...[ + const SizedBox(height: 5), + Text( + "${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}", + style: TextStyle( + fontSize: 14, + color: Theme.of(context).listTileTheme.textColor + ), + ) + ] ], if (serversProvider.selectedServer == null) Text( AppLocalizations.of(context)!.noServerSelected, diff --git a/lib/screens/settings/general_settings.dart b/lib/screens/settings/general_settings.dart index 1f73784..fe1e59b 100644 --- a/lib/screens/settings/general_settings.dart +++ b/lib/screens/settings/general_settings.dart @@ -159,6 +159,28 @@ class _GeneralSettingsState extends State { right: 10 ) ), + CustomListTile( + icon: Icons.remove_red_eye_rounded, + title: AppLocalizations.of(context)!.hideServerAddress, + subtitle: AppLocalizations.of(context)!.hideServerAddressDescription, + trailing: Switch( + value: appConfigProvider.hideServerAddress, + onChanged: (value) => updateSettings( + newStatus: value, + function: appConfigProvider.setHideServerAddress + ), + ), + onTap: () => updateSettings( + newStatus: !appConfigProvider.hideServerAddress, + function: appConfigProvider.setHideServerAddress + ), + padding: const EdgeInsets.only( + top: 10, + bottom: 10, + left: 16, + right: 10 + ) + ), SectionLabel(label: AppLocalizations.of(context)!.logs), CustomListTile( icon: Icons.timer_rounded,