|
@@ -1,4 +1,4 @@
|
|
-import 'dart:typed_data';
|
|
|
|
|
|
+import 'dart:io';
|
|
import 'package:flutter/widgets.dart';
|
|
import 'package:flutter/widgets.dart';
|
|
import 'package:photos/core/cache/image_cache.dart';
|
|
import 'package:photos/core/cache/image_cache.dart';
|
|
import 'package:photos/core/cache/thumbnail_cache.dart';
|
|
import 'package:photos/core/cache/thumbnail_cache.dart';
|
|
@@ -72,11 +72,11 @@ class _ZoomableImageState extends State<ZoomableImage> {
|
|
if (cachedImage != null) {
|
|
if (cachedImage != null) {
|
|
_onFinalImageLoaded(cachedImage, context);
|
|
_onFinalImageLoaded(cachedImage, context);
|
|
} else {
|
|
} else {
|
|
- widget.photo.getBytes().then((bytes) {
|
|
|
|
|
|
+ widget.photo.getAsset().file.then((file) {
|
|
if (mounted) {
|
|
if (mounted) {
|
|
setState(() {
|
|
setState(() {
|
|
- _onFinalImageLoaded(bytes, context);
|
|
|
|
- ImageLruCache.put(widget.photo, bytes);
|
|
|
|
|
|
+ _onFinalImageLoaded(file, context);
|
|
|
|
+ ImageLruCache.put(widget.photo, file);
|
|
});
|
|
});
|
|
}
|
|
}
|
|
});
|
|
});
|
|
@@ -108,8 +108,8 @@ class _ZoomableImageState extends State<ZoomableImage> {
|
|
_loadedLargeThumbnail = true;
|
|
_loadedLargeThumbnail = true;
|
|
}
|
|
}
|
|
|
|
|
|
- void _onFinalImageLoaded(Uint8List bytes, BuildContext context) {
|
|
|
|
- final imageProvider = Image.memory(bytes).image;
|
|
|
|
|
|
+ void _onFinalImageLoaded(File file, BuildContext context) {
|
|
|
|
+ final imageProvider = Image.file(file).image;
|
|
precacheImage(imageProvider, context).then((value) {
|
|
precacheImage(imageProvider, context).then((value) {
|
|
if (mounted) {
|
|
if (mounted) {
|
|
setState(() {
|
|
setState(() {
|