Files
MWClash/lib/manager/android_manager.dart

42 lines
1006 B
Dart
Raw Normal View History

import 'package:fl_clash/models/models.dart';
import 'package:fl_clash/plugins/app.dart';
2024-04-30 23:38:49 +08:00
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:provider/provider.dart';
2024-04-30 23:38:49 +08:00
class AndroidManager extends StatefulWidget {
2024-04-30 23:38:49 +08:00
final Widget child;
const AndroidManager({
2024-04-30 23:38:49 +08:00
super.key,
required this.child,
});
@override
State<AndroidManager> createState() => _AndroidContainerState();
2024-04-30 23:38:49 +08:00
}
class _AndroidContainerState extends State<AndroidManager> {
@override
void initState() {
super.initState();
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
}
Widget _excludeContainer(Widget child) {
return Selector<Config, bool>(
selector: (_, config) => config.appSetting.hidden,
builder: (_, hidden, child) {
app?.updateExcludeFromRecents(hidden);
return child!;
},
child: child,
);
}
2024-04-30 23:38:49 +08:00
@override
Widget build(BuildContext context) {
return _excludeContainer(widget.child);
2024-04-30 23:38:49 +08:00
}
}