diff --git a/lib/main.dart b/lib/main.dart index 85e48a4..935629f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,6 +2,4 @@ import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:steamwar_multitool/src/app.dart'; -void main() { - runApp(const ProviderScope(child: DevServerStarterApp())); -} +void main() => runApp(const ProviderScope(child: DevServerStarterApp())); diff --git a/lib/src/screens/event.dart b/lib/src/screens/event.dart index cd6d58a..fa4f3c9 100644 --- a/lib/src/screens/event.dart +++ b/lib/src/screens/event.dart @@ -77,13 +77,17 @@ class _EventScreen extends HookConsumerWidget { final maxTeamMembersController = useTextEditingController(text: event.maxTeamMembers.toString()); final invalidMaxTeamMembers = useState(false); - final schematicTypeState = useState(catchToNull(() => ref - .watch(schematicTypesProvider) - .value! - .firstWhere((element) => element.db == event.schemType))); + final schematicTypeState = useState(null); final publicOnlyState = useState(event.publicSchemsOnly); final spectateSystemState = useState(event.spectateSystem); + useMemoized(() { + ref.read(schematicTypesProvider.future).then((value) { + schematicTypeState.value = catchToNull( + () => value.firstWhere((element) => element.db == event.schemType)); + }); + }); + final changed = useState(false); return Scaffold( appBar: AppBar(