Files

38 lines
1.0 KiB
Dart

import 'package:flutter/material.dart';
import 'package:macos_ui/macos_ui.dart';
import 'src/rust/frb_generated.dart';
import 'src/services/app_settings_service.dart';
import 'src/ui/main_layout.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
// Инициализация Rust FFI бэкенда через flutter_rust_bridge v2
await RustLib.init();
runApp(const ForgeApp());
}
class ForgeApp extends StatelessWidget {
const ForgeApp({super.key});
@override
Widget build(BuildContext context) {
return ListenableBuilder(
listenable: AppSettingsService.instance,
builder: (context, _) {
final activeStyle = AppSettingsService.instance.effectiveWindowThemeStyle;
final themeData = activeStyle.buildThemeData();
return MacosApp(
title: 'Forge',
debugShowCheckedModeBanner: false,
themeMode: ThemeMode.dark,
theme: themeData,
darkTheme: themeData,
home: const MainLayout(),
);
},
);
}
}