50 lines
1.4 KiB
Dart
50 lines
1.4 KiB
Dart
import 'dart:io';
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
import 'package:momo/material/app.dart';
|
|
import 'package:momo/provider/token.dart';
|
|
import 'package:shared_preferences/shared_preferences.dart';
|
|
import 'package:window_manager/window_manager.dart';
|
|
// import 'package:tray_manager/tray_manager.dart';
|
|
|
|
void main() async {
|
|
if (Platform.isLinux || Platform.isWindows || Platform.isMacOS) {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
// Must add this line.
|
|
await windowManager.ensureInitialized();
|
|
WindowOptions windowOptions = const WindowOptions(
|
|
size: Size(880, 600),
|
|
center: true,
|
|
minimumSize: Size(300, 400),
|
|
// backgroundColor: Colors.transparent,
|
|
// skipTaskbar: false,
|
|
// titleBarStyle: TitleBarStyle.hidden,
|
|
);
|
|
windowManager.waitUntilReadyToShow(windowOptions, () async {
|
|
await windowManager.show();
|
|
await windowManager.focus();
|
|
});
|
|
}
|
|
final prefs = await SharedPreferences.getInstance();
|
|
String? tk = prefs.getString("token");
|
|
final container = ProviderContainer();
|
|
container.read(tokenProvider.notifier).setToken(tk);
|
|
runApp(
|
|
UncontrolledProviderScope(
|
|
container: container,
|
|
child: const MyApp(),
|
|
),
|
|
);
|
|
}
|
|
|
|
class MyApp extends StatelessWidget {
|
|
const MyApp({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
print("build my app");
|
|
return const MyMaterialApp();
|
|
}
|
|
}
|