diff --git a/lib/screens/login_screen.dart b/lib/screens/login_screen.dart index 6a1b44c..e22f3c1 100644 --- a/lib/screens/login_screen.dart +++ b/lib/screens/login_screen.dart @@ -96,9 +96,7 @@ class _LoginScreenState extends AuthState with Loadable { Navigator.push( context, MaterialPageRoute( - builder: (context) => ServerLoadingScreen( - nextScreen: MainScreen.ID, - ), + builder: (context) => const ServerLoadingScreen(), ), ); } diff --git a/lib/screens/main_screen.dart b/lib/screens/main_screen.dart index 7febdb2..ba0287e 100644 --- a/lib/screens/main_screen.dart +++ b/lib/screens/main_screen.dart @@ -11,12 +11,14 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; import 'package:location/location.dart'; import 'package:permission_handler/permission_handler.dart'; +import 'package:provider/provider.dart'; import 'package:quid_faciam_hodie/constants/help_sheet_id.dart'; import 'package:quid_faciam_hodie/constants/spacing.dart'; import 'package:quid_faciam_hodie/constants/values.dart'; import 'package:quid_faciam_hodie/extensions/snackbar.dart'; import 'package:quid_faciam_hodie/managers/file_manager.dart'; import 'package:quid_faciam_hodie/managers/global_values_manager.dart'; +import 'package:quid_faciam_hodie/models/memories.dart'; import 'package:quid_faciam_hodie/screens/main_screen/annotation_dialog.dart'; import 'package:quid_faciam_hodie/screens/main_screen/camera_help_content.dart'; import 'package:quid_faciam_hodie/screens/main_screen/settings_button_overlay.dart'; @@ -77,6 +79,7 @@ class _MainScreenState extends AuthRequiredState with Loadable { void initState() { super.initState(); + downloadLatestMemory(); loadSettings(); loadCameras(); } @@ -92,6 +95,18 @@ class _MainScreenState extends AuthRequiredState with Loadable { _updateCamera(state); } + Future downloadLatestMemory() async { + final memories = context.read(); + + if (memories.memories.isEmpty) { + return; + } + + final latestMemory = memories.memories.first; + + await latestMemory.downloadToFile(); + } + Future loadSettings() async { final settings = GlobalValuesManager.settings!; diff --git a/lib/screens/main_screen/annotation_dialog.dart b/lib/screens/main_screen/annotation_dialog.dart index 7fa6c7a..10dfb45 100644 --- a/lib/screens/main_screen/annotation_dialog.dart +++ b/lib/screens/main_screen/annotation_dialog.dart @@ -64,7 +64,7 @@ class _AnnotationDialogState extends State { actions: [ PlatformDialogAction( child: Text(localizations.generalCancelButtonLabel), - onPressed: () => Navigator.pop(context), + onPressed: () => Navigator.pop(context, ''), ), PlatformDialogAction( child: Text(localizations.generalSaveButtonLabel), diff --git a/lib/screens/welcome_screen.dart b/lib/screens/welcome_screen.dart index a70db12..2e43b0c 100644 --- a/lib/screens/welcome_screen.dart +++ b/lib/screens/welcome_screen.dart @@ -2,16 +2,18 @@ import 'dart:math'; import 'package:flutter/material.dart'; import 'package:flutter_platform_widgets/flutter_platform_widgets.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:quid_faciam_hodie/constants/spacing.dart'; import 'package:quid_faciam_hodie/constants/values.dart'; import 'package:quid_faciam_hodie/managers/photo_manager.dart'; -import 'package:quid_faciam_hodie/managers/user_help_sheets_manager.dart'; import 'package:quid_faciam_hodie/screens/welcome_screen/pages/view_memories_page.dart'; import 'welcome_screen/pages/create_memories_page.dart'; import 'welcome_screen/pages/get_started_page.dart'; import 'welcome_screen/pages/initial_page.dart'; +const storage = FlutterSecureStorage(); + class WelcomeScreen extends StatefulWidget { static const ID = '/welcome'; @@ -29,7 +31,7 @@ class _WelcomeScreenState extends State { void initState() { super.initState(); - UserHelpSheetsManager.deleteAll(); + storage.deleteAll(); getInitialImageForPhotoSwitching(); } diff --git a/lib/utils/auth_required.dart b/lib/utils/auth_required.dart index f0b433c..f2bf44d 100644 --- a/lib/utils/auth_required.dart +++ b/lib/utils/auth_required.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:quid_faciam_hodie/screens/login_screen.dart'; +import 'package:quid_faciam_hodie/screens/welcome_screen.dart'; import 'package:supabase_flutter/supabase_flutter.dart'; class AuthRequiredState @@ -8,7 +8,7 @@ class AuthRequiredState void onUnauthenticated() { if (mounted) { Navigator.of(context) - .pushNamedAndRemoveUntil(LoginScreen.ID, (route) => false); + .pushNamedAndRemoveUntil(WelcomeScreen.ID, (route) => false); } } } diff --git a/lib/widgets/raw_memory_display.dart b/lib/widgets/raw_memory_display.dart index 9838e1d..a4d40e9 100644 --- a/lib/widgets/raw_memory_display.dart +++ b/lib/widgets/raw_memory_display.dart @@ -43,18 +43,12 @@ class _RawMemoryDisplayState extends State { Future createTempVideo() async { final tempDirectory = await getTemporaryDirectory(); final path = '${tempDirectory.path}/${widget.filename ?? 'video.mp4'}'; - print("#" * 50); - print(widget.filename); - print(path); final file = File(path); - print(await file.exists()); - print(widget.data); - /* if (await file.exists()) { // File already exists, so just return it return file; - }*/ + } // File needs to be created await file.create();