Skip to content

Commit

Permalink
⚡️ Evict the captured image cache once returned from the viewer (#244)
Browse files Browse the repository at this point in the history
Resolves #162
  • Loading branch information
AlexV525 authored Oct 4, 2024
1 parent 7fb72c7 commit db098f5
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 2 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ See the [Migration Guide](guides/migration_guide.md) for breaking changes betwee

## Unreleased

*None.*
- Evict the captured image cache once returned from the viewer.

## 4.3.2

Expand Down
11 changes: 10 additions & 1 deletion lib/src/states/camera_picker_state.dart
Original file line number Diff line number Diff line change
Expand Up @@ -1095,15 +1095,24 @@ class CameraPickerState extends State<CameraPicker>
required XFile file,
required CameraPickerViewType viewType,
}) async {
final FileImage? image;
if (viewType == CameraPickerViewType.image) {
image = FileImage(File(file.path));
await precacheImage(FileImage(File(file.path)), context);
} else {
image = null;
}
return CameraPickerViewer.pushToViewer(
final result = await CameraPickerViewer.pushToViewer(
context,
pickerConfig: pickerConfig,
viewType: viewType,
previewXFile: file,
);
if (image != null) {
final evicted = PaintingBinding.instance.imageCache.evict(image);
realDebugPrint('Preview image cache evicted: $evicted');
}
return result;
}

////////////////////////////////////////////////////////////////////////////
Expand Down

0 comments on commit db098f5

Please sign in to comment.