cb080885b0
BREAKING CHANGE: Desktop TUN keys follow the profile unless picked; changed values carry over Changelog: Per-key desktop TUN settings; system proxy and tray fixes
31 lines
766 B
Dart
31 lines
766 B
Dart
import 'package:fl_clash/common/proxy.dart';
|
|
import 'package:fl_clash/providers/state.dart';
|
|
import 'package:material_ui/material_ui.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
|
|
class ProxyManager extends ConsumerStatefulWidget {
|
|
final Widget child;
|
|
|
|
const ProxyManager({super.key, required this.child});
|
|
|
|
@override
|
|
ConsumerState createState() => _ProxyManagerState();
|
|
}
|
|
|
|
class _ProxyManagerState extends ConsumerState<ProxyManager> {
|
|
@override
|
|
void initState() {
|
|
super.initState();
|
|
ref.listenManual(proxyStateProvider, (prev, next) {
|
|
if (prev != next) {
|
|
systemProxyQueue?.apply(next);
|
|
}
|
|
}, fireImmediately: true);
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return widget.child;
|
|
}
|
|
}
|