Made memories full screen

This commit is contained in:
Marty Fuhry 2024-01-31 09:07:01 -05:00
parent b7a372c756
commit aa90229c84
No known key found for this signature in database
GPG Key ID: E2AB6392D894D900

View File

@ -33,6 +33,12 @@ class MemoryPage extends HookConsumerWidget {
);
const bgColor = Colors.black;
useEffect(() {
// Memories is an immersive activity
SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersive);
return null;
});
toNextMemory() {
memoryPageController.nextPage(
duration: const Duration(milliseconds: 500),
@ -154,7 +160,12 @@ class MemoryPage extends HookConsumerWidget {
},
child: Scaffold(
backgroundColor: bgColor,
body: SafeArea(
body: PopScope(
onPopInvoked: (didPop) {
// Remove immersive mode and go back to normal mode
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
},
child: SafeArea(
child: PageView.builder(
physics: const BouncingScrollPhysics(
parent: AlwaysScrollableScrollPhysics(),
@ -202,7 +213,13 @@ class MemoryPage extends HookConsumerWidget {
child: MemoryCard(
asset: asset,
onTap: () => toNextAsset(index),
onClose: () => context.popRoute(),
onClose: () {
// auto_route doesn't invoke pop scope, so
// turn off full screen mode here
// https://github.com/Milad-Akarie/auto_route_library/issues/1799
context.popRoute();
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
},
rightCornerText: assetProgress.value,
title: memories[mIndex].title,
showTitle: index == 0,
@ -218,6 +235,7 @@ class MemoryPage extends HookConsumerWidget {
),
),
),
),
);
}
}