This commit is contained in:
@ -1,46 +1,44 @@
|
||||
import 'package:f0ckapp/providers/theme_provider.dart';
|
||||
import 'package:f0ckapp/screens/settings_screen.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
import 'package:get/get.dart';
|
||||
import 'package:encrypt_shared_preferences/provider.dart';
|
||||
|
||||
import 'package:f0ckapp/utils/appversion_util.dart';
|
||||
import 'package:f0ckapp/services/api_service.dart';
|
||||
import 'package:f0ckapp/utils/appversion.dart';
|
||||
import 'package:f0ckapp/controller/theme_controller.dart';
|
||||
import 'package:f0ckapp/controller/media_controller.dart';
|
||||
import 'package:f0ckapp/screens/detail_view.dart';
|
||||
import 'package:f0ckapp/screens/media_grid.dart';
|
||||
import 'package:f0ckapp/screens/settings_screen.dart';
|
||||
import 'package:f0ckapp/screens/detailview_screen.dart';
|
||||
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
await SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
|
||||
await EncryptedSharedPreferencesAsync.initialize('VokTnbAbemBUa2j9');
|
||||
await AppVersion.init();
|
||||
Get.put(MediaController());
|
||||
final ThemeController themeController = Get.put(ThemeController());
|
||||
|
||||
final api = ApiService();
|
||||
await api.fetchMedia();
|
||||
Get.put(api);
|
||||
|
||||
runApp(
|
||||
GetMaterialApp(
|
||||
theme: themeController.currentTheme.value,
|
||||
initialRoute: '/',
|
||||
getPages: [
|
||||
GetPage(name: '/', page: () => MediaGrid()),
|
||||
GetPage(name: '/settings', page: () => SettingsPage()),
|
||||
GetPage(
|
||||
name: '/:itemId',
|
||||
page: () {
|
||||
int? test = int.tryParse(Get.parameters['itemId']!);
|
||||
if (test == null) {
|
||||
return Scaffold(body: Center(child: Text('oof')));
|
||||
}
|
||||
return DetailView(initialItemId: test);
|
||||
},
|
||||
),
|
||||
],
|
||||
unknownRoute: GetPage(
|
||||
name: '/notfound',
|
||||
page: () => Center(child: Text('oof')),
|
||||
Obx(
|
||||
() => MaterialApp(
|
||||
navigatorKey: Get.key,
|
||||
theme: themeController.currentTheme.value,
|
||||
debugShowCheckedModeBanner: false,
|
||||
onGenerateRoute: (RouteSettings settings) {
|
||||
final uri = Uri.parse(settings.name ?? '/');
|
||||
|
||||
if (uri.path == '/' || uri.pathSegments.isEmpty) {
|
||||
return MaterialPageRoute(builder: (_) => MediaGrid());
|
||||
}
|
||||
|
||||
if (uri.pathSegments.length == 1) {
|
||||
final int id = int.parse(uri.pathSegments.first);
|
||||
return MaterialPageRoute(builder: (_) => DetailView(initialId: id));
|
||||
}
|
||||
|
||||
return MaterialPageRoute(builder: (_) => MediaGrid());
|
||||
},
|
||||
),
|
||||
),
|
||||
);
|
||||
|
Reference in New Issue
Block a user