1
0
mirror of https://github.com/immich-app/immich.git synced 2024-12-26 10:50:29 +02:00

fix(mobile): back button while multiselecting showing the last selected image (#1521)

This commit is contained in:
martyfuhry 2023-02-02 13:20:26 -05:00 committed by GitHub
parent 29c79ad1d8
commit 5d6559e839
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 48 additions and 45 deletions

View File

@ -224,13 +224,28 @@ class ImmichAssetGridState extends State<ImmichAssetGrid> {
} }
} }
Future<bool> onWillPop() async {
if (widget.selectionActive && _selectedAssets.isNotEmpty) {
_deselectAll();
return false;
}
return true;
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Stack( return WillPopScope(
onWillPop: onWillPop,
child: Stack(
children: [ children: [
_buildAssetGrid(), _buildAssetGrid(),
if (widget.selectionActive) _buildMultiSelectIndicator(), if (widget.selectionActive) _buildMultiSelectIndicator(),
], ],
),
); );
} }
} }

View File

@ -200,18 +200,7 @@ class HomePage extends HookConsumerWidget {
); );
} }
Future<bool> onWillPop() async { return SafeArea(
if (multiselectEnabled.state) {
selectionEnabledHook.value = false;
return false;
}
return true;
}
return WillPopScope(
onWillPop: onWillPop,
child: SafeArea(
bottom: !multiselectEnabled.state, bottom: !multiselectEnabled.state,
top: true, top: true,
child: Stack( child: Stack(
@ -240,7 +229,6 @@ class HomePage extends HookConsumerWidget {
), ),
], ],
), ),
),
); );
} }