Compare commits

..

5 Commits

Author SHA1 Message Date
chen08209
b44cef071d Optimize default option
Optimize computed text size
2025-04-30 14:47:19 +08:00
chen08209
21fbff52b6 Add windows server mode start process verify
Add linux deb dependencies

Add backup recovery strategy select
2025-04-29 18:31:32 +08:00
chen08209
0a98515457 Optimize startTun performance 2025-04-26 21:29:56 +08:00
chen08209
be8cf039ee Support custom text scaling
Optimize the display of different text scale

Optimize windows setup experience
2025-04-25 17:38:26 +08:00
chen08209
30ee6889ab Optimize android tv experience
Optimize hyperOS freeform window

Add developer mode

Update core

Optimize more details
2025-04-22 16:05:24 +08:00
8 changed files with 8 additions and 49 deletions

View File

@@ -1,43 +1,3 @@
## v0.8.84
- Fix windows service verify issues
- Update changelog
## v0.8.83
- Add windows server mode start process verify
- Add linux deb dependencies
- Add backup recovery strategy select
- Support custom text scaling
- Optimize the display of different text scale
- Optimize windows setup experience
- Optimize startTun performance
- Optimize android tv experience
- Optimize default option
- Optimize computed text size
- Optimize hyperOS freeform window
- Add developer mode
- Update core
- Optimize more details
- Add issues template
- Update changelog
## v0.8.82
- Optimize android vpn performance

View File

@@ -29,6 +29,8 @@ Future<void> main() async {
await globalState.initApp(version);
await android?.init();
await window?.init(version);
globalState.isPre = const String.fromEnvironment("APP_ENV") != 'stable';
globalState.coreSHA256 = const String.fromEnvironment("CORE_SHA256");
HttpOverrides.global = FlClashHttpOverrides();
runApp(ProviderScope(
child: const Application(),

View File

@@ -52,8 +52,6 @@ class GlobalState {
}
initApp(int version) async {
coreSHA256 = const String.fromEnvironment("CORE_SHA256");
isPre = const String.fromEnvironment("APP_ENV") != 'stable';
appState = AppState(
version: version,
viewSize: Size.zero,

View File

@@ -94,7 +94,7 @@ class _ScrollToEndBoxState<T> extends State<ScrollToEndBox<T>> {
@override
Widget build(BuildContext context) {
return NotificationListener<UserScrollNotification>(
return NotificationListener<ScrollNotification>(
onNotification: (details) {
globalState.cacheScrollPosition[widget.tag] =
details.metrics.pixels == details.metrics.maxScrollExtent

View File

@@ -1,7 +1,7 @@
name: fl_clash
description: A multi-platform proxy client based on ClashMeta, simple and easy to use, open-source and ad-free.
publish_to: 'none'
version: 0.8.84+202505013
version: 0.8.83+202504301
environment:
sdk: '>=3.1.0 <4.0.0'

View File

@@ -39,9 +39,8 @@ static PROCESS: Lazy<Arc<Mutex<Option<std::process::Child>>>> =
Lazy::new(|| Arc::new(Mutex::new(None)));
fn start(start_params: StartParams) -> impl Reply {
let sha256 = sha256_file(start_params.path.as_str()).unwrap_or("".to_string());
if sha256 != env!("TOKEN") {
return format!("The SHA256 hash of the program requesting execution is: {}. The helper program only allows execution of applications with the SHA256 hash: {}.", sha256, env!("TOKEN"),);
if sha256_file(start_params.path.as_str()).unwrap_or("".to_string()) != env!("TOKEN") {
return "Only FlClashCore is allowed to run.".to_string();
}
stop();
let mut process = PROCESS.lock().unwrap();