add basic routing options, auto update routing assets,use ruleset, remove geo assets

This commit is contained in:
hiddify-com
2024-07-04 21:04:44 +02:00
parent 93f4bbca32
commit c6d34e7455
27 changed files with 773 additions and 835 deletions

View File

@@ -23,16 +23,16 @@ class AdvancedSettingTiles extends HookConsumerWidget {
return Column(
children: [
const RegionPrefTile(),
ListTile(
title: Text(t.settings.geoAssets.pageTitle),
leading: const Icon(
FluentIcons.arrow_routing_rectangle_multiple_24_regular,
),
onTap: () async {
await const GeoAssetsRoute().push(context);
},
),
// const RegionPrefTile(),
// ListTile(
// title: Text(t.settings.geoAssets.pageTitle),
// leading: const Icon(
// FluentIcons.arrow_routing_rectangle_multiple_24_regular,
// ),
// onTap: () async {
// // await const GeoAssetsRoute().push(context);
// },
// ),
if (Platform.isAndroid) ...[
ListTile(
title: Text(t.settings.network.perAppProxyPageTitle),
@@ -40,11 +40,8 @@ class AdvancedSettingTiles extends HookConsumerWidget {
trailing: Switch(
value: perAppProxy,
onChanged: (value) async {
final newMode =
perAppProxy ? PerAppProxyMode.off : PerAppProxyMode.exclude;
await ref
.read(Preferences.perAppProxyMode.notifier)
.update(newMode);
final newMode = perAppProxy ? PerAppProxyMode.off : PerAppProxyMode.exclude;
await ref.read(Preferences.perAppProxyMode.notifier).update(newMode);
if (!perAppProxy && context.mounted) {
await const PerAppProxyRoute().push(context);
}
@@ -52,9 +49,7 @@ class AdvancedSettingTiles extends HookConsumerWidget {
),
onTap: () async {
if (!perAppProxy) {
await ref
.read(Preferences.perAppProxyMode.notifier)
.update(PerAppProxyMode.exclude);
await ref.read(Preferences.perAppProxyMode.notifier).update(PerAppProxyMode.exclude);
}
if (context.mounted) await const PerAppProxyRoute().push(context);
},
@@ -66,9 +61,7 @@ class AdvancedSettingTiles extends HookConsumerWidget {
value: !disableMemoryLimit,
secondary: const Icon(FluentIcons.developer_board_24_regular),
onChanged: (value) async {
await ref
.read(Preferences.disableMemoryLimit.notifier)
.update(!value);
await ref.read(Preferences.disableMemoryLimit.notifier).update(!value);
},
),
if (Platform.isIOS)