diff --git a/app/lib/presentation/controllers/website_title.dart b/app/lib/presentation/controllers/website_title.dart index 2f1bb70a..0610dd51 100644 --- a/app/lib/presentation/controllers/website_title.dart +++ b/app/lib/presentation/controllers/website_title.dart @@ -25,11 +25,12 @@ import 'package:weblibre/data/models/web_page_info.dart'; import 'package:weblibre/domain/services/generic_website.dart'; import 'package:weblibre/extensions/ref_cache.dart'; import 'package:weblibre/features/geckoview/domain/entities/states/tab.dart'; -import 'package:weblibre/features/geckoview/domain/providers/selected_tab.dart'; import 'package:weblibre/features/geckoview/domain/providers/tab_state.dart'; import 'package:weblibre/features/geckoview/features/tabs/domain/repositories/container.dart'; import 'package:weblibre/features/geckoview/features/tabs/domain/repositories/tab.dart'; import 'package:weblibre/features/tor/domain/services/tor_proxy.dart'; +import 'package:weblibre/features/user/data/models/tor_settings.dart'; +import 'package:weblibre/features/user/domain/repositories/tor_settings.dart'; part 'website_title.g.dart'; @@ -108,13 +109,13 @@ Future pageInfo( }) async { final link = ref.cacheFor(const Duration(minutes: 2)); - final tabId = ref.read(selectedTabProvider); + final tabState = ref.read(selectedTabStateProvider); int? proxyPort; - if (tabId != null) { + if (tabState?.id != null) { final containerId = await ref .read(tabDataRepositoryProvider.notifier) - .getContainerTabId(tabId); + .getContainerTabId(tabState!.id); final containerData = await containerId.mapNotNull( (containerId) => ref @@ -122,7 +123,12 @@ Future pageInfo( .getContainerData(containerId), ); - if (containerData?.metadata.useProxy == true) { + final torSettings = ref.read(torSettingsWithDefaultsProvider); + + if (containerData?.metadata.useProxy == true || + (tabState.isPrivate == false && + torSettings.proxyRegularTabsMode == TorRegularTabProxyMode.all) || + (tabState.isPrivate == true && torSettings.proxyPrivateTabsTor)) { proxyPort = await ref.read(torProxyServiceProvider.future); if (proxyPort == null) { diff --git a/app/lib/presentation/controllers/website_title.g.dart b/app/lib/presentation/controllers/website_title.g.dart index 866dc4d1..8ff59913 100644 --- a/app/lib/presentation/controllers/website_title.g.dart +++ b/app/lib/presentation/controllers/website_title.g.dart @@ -163,7 +163,7 @@ final class PageInfoProvider } } -String _$pageInfoHash() => r'53380fbf9c67d494944330641cefbde9455cdb60'; +String _$pageInfoHash() => r'87d23da9b25c3557e7270d90c2dee6f37eaaf8e0'; final class PageInfoFamily extends $Family with