@@ -9,6 +9,7 @@ import 'package:get/get.dart';
99import 'package:loggy/loggy.dart' ;
1010import 'package:path_provider/path_provider.dart' ;
1111import 'package:permission_handler/permission_handler.dart' ;
12+ import 'package:shared_preferences/shared_preferences.dart' ;
1213import 'package:sizer/sizer.dart' ;
1314import 'package:taskwarrior/controller/WidgetController.dart' ;
1415import 'package:taskwarrior/controller/onboarding_controller.dart' ;
@@ -47,21 +48,30 @@ Future main([List<String> args = const []]) async {
4748 '${testingDirectory .path }/profiles/acae0462-6a34-11e4-8001-002590720087' ,
4849 ).createSync (recursive: true );
4950 }
50- SystemChrome .setPreferredOrientations ([
51- DeviceOrientation .portraitUp,
52- DeviceOrientation .portraitDown
53- ]).then ((value) =>
54- runApp (
55- FutureBuilder <Directory >(
56- future: getApplicationDocumentsDirectory (),
57- builder: (context, snapshot) => (snapshot.hasData)
58- ? ProfilesWidget (
59- baseDirectory: testingDirectory ?? snapshot.data! ,
60- child: const MyApp (),
61- )
62- : const AppSetupPlaceholder (),
63- ),
64- ));
51+ SystemChrome .setPreferredOrientations (
52+ [DeviceOrientation .portraitUp, DeviceOrientation .portraitDown])
53+ .then ((value) => runApp (FutureBuilder <List <Directory >>(
54+ future: getDirectories (),
55+ builder: (context, snapshot) {
56+ if (snapshot.hasData) {
57+ return ProfilesWidget (
58+ defaultDirectory: snapshot.data! [0 ],
59+ baseDirectory: testingDirectory ?? snapshot.data! [1 ],
60+ child: const MyApp (),
61+ );
62+ } else {
63+ return const AppSetupPlaceholder ();
64+ }
65+ })));
66+ }
67+
68+ Future <List <Directory >> getDirectories () async {
69+ Directory defaultDirectory = await getApplicationDocumentsDirectory ();
70+ SharedPreferences prefs = await SharedPreferences .getInstance ();
71+ String ? directory = prefs.getString ('baseDirectory' );
72+ Directory baseDirectory =
73+ (directory != null ) ? Directory (directory) : defaultDirectory;
74+ return [defaultDirectory, baseDirectory];
6575}
6676
6777Future init () async {
0 commit comments