Cache encrypted thumbnails loaded from the network
This commit is contained in:
parent
134b1f417e
commit
532a9cac46
1 changed files with 9 additions and 1 deletions
|
@ -1,6 +1,7 @@
|
|||
import 'package:cached_network_image/cached_network_image.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:photos/core/cache/image_cache.dart';
|
||||
import 'dart:io' as io;
|
||||
import 'package:photos/core/cache/thumbnail_cache.dart';
|
||||
import 'package:photos/core/configuration.dart';
|
||||
|
@ -124,11 +125,18 @@ class _ThumbnailWidgetState extends State<ThumbnailWidget> {
|
|||
fit: BoxFit.cover,
|
||||
);
|
||||
} else {
|
||||
if (FileLruCache.get(widget.file) != null) {
|
||||
return Image.file(
|
||||
FileLruCache.get(widget.file),
|
||||
fit: widget.fit,
|
||||
);
|
||||
}
|
||||
final thumbnailPath = Configuration.instance.getThumbnailsDirectory() +
|
||||
widget.file.generatedID.toString() +
|
||||
".jpg";
|
||||
final thumbnailFile = io.File(thumbnailPath);
|
||||
if (thumbnailFile.existsSync()) {
|
||||
FileLruCache.put(widget.file, thumbnailFile);
|
||||
return Image.file(
|
||||
thumbnailFile,
|
||||
fit: widget.fit,
|
||||
|
@ -149,7 +157,7 @@ class _ThumbnailWidgetState extends State<ThumbnailWidget> {
|
|||
future: decryptedFileFuture,
|
||||
builder: (context, snapshot) {
|
||||
if (snapshot.hasData) {
|
||||
// TODO: Cache data
|
||||
FileLruCache.put(widget.file, snapshot.data);
|
||||
return Image.file(
|
||||
snapshot.data,
|
||||
fit: widget.fit,
|
||||
|
|
Loading…
Add table
Reference in a new issue