Files
umbrix/lib/features/settings/widgets/network_setting_tiles.dart
problematicconsumer b617c95f62 initial
2023-07-06 17:18:41 +03:30

37 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import 'package:hiddify/core/core_providers.dart';
import 'package:hiddify/core/prefs/prefs.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:recase/recase.dart';
class NetworkSettingTiles extends HookConsumerWidget {
const NetworkSettingTiles({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
final t = ref.watch(translationsProvider);
final prefs =
ref.watch(prefsControllerProvider.select((value) => value.network));
final notifier = ref.watch(prefsControllerProvider.notifier);
return Column(
children: [
SwitchListTile(
title: Text(t.settings.network.systemProxy.titleCase),
subtitle: Text(t.settings.network.systemProxyMsg),
value: prefs.systemProxy,
onChanged: (value) => notifier.patchNetworkPrefs(systemProxy: value),
),
SwitchListTile(
title: Text(t.settings.network.bypassPrivateNetworks.titleCase),
subtitle: Text(t.settings.network.bypassPrivateNetworksMsg),
value: prefs.bypassPrivateNetworks,
onChanged: (value) =>
notifier.patchNetworkPrefs(bypassPrivateNetworks: value),
),
],
);
}
}