|
@@ -1,5 +1,4 @@
|
|
|
-// @dart=2.9
|
|
|
-
|
|
|
+import 'package:collection/collection.dart' show IterableExtension;
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
import 'package:photos/models/file.dart';
|
|
|
|
|
@@ -11,9 +10,8 @@ class SelectedFiles extends ChangeNotifier {
|
|
|
// To handle the cases, where the file might have changed due to upload
|
|
|
// or any other update, using file.generatedID to track if this file was already
|
|
|
// selected or not
|
|
|
- final File alreadySelected = files.firstWhere(
|
|
|
+ final File? alreadySelected = files.firstWhereOrNull(
|
|
|
(element) => element.generatedID == file.generatedID,
|
|
|
- orElse: () => null,
|
|
|
);
|
|
|
if (alreadySelected != null) {
|
|
|
files.remove(alreadySelected);
|
|
@@ -26,17 +24,15 @@ class SelectedFiles extends ChangeNotifier {
|
|
|
}
|
|
|
|
|
|
bool isFileSelected(File file) {
|
|
|
- final File alreadySelected = files.firstWhere(
|
|
|
+ final File? alreadySelected = files.firstWhereOrNull(
|
|
|
(element) => element.generatedID == file.generatedID,
|
|
|
- orElse: () => null,
|
|
|
);
|
|
|
return alreadySelected != null;
|
|
|
}
|
|
|
|
|
|
bool isPartOfLastSection(File file) {
|
|
|
- final File alreadySelected = lastSelections.firstWhere(
|
|
|
+ final File? alreadySelected = lastSelections.firstWhereOrNull(
|
|
|
(element) => element.generatedID == file.generatedID,
|
|
|
- orElse: () => null,
|
|
|
);
|
|
|
return alreadySelected != null;
|
|
|
}
|