#1433 stack RAW with developed HEIC
This commit is contained in:
parent
728b8018c4
commit
9280b4a6a7
3 changed files with 5 additions and 3 deletions
|
@ -8,6 +8,7 @@ All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
- support for Samsung HEIC motion photos embedding video in sefd box
|
- support for Samsung HEIC motion photos embedding video in sefd box
|
||||||
- Cataloguing: identify video location from Apple QuickTime metadata, and 3GPP `loci` atom
|
- Cataloguing: identify video location from Apple QuickTime metadata, and 3GPP `loci` atom
|
||||||
|
- Collection: stack RAW and HEIC with same file names
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
|
|
@ -6,11 +6,10 @@ import 'package:aves/model/entry/extensions/multipage.dart';
|
||||||
import 'package:aves/model/entry/extensions/props.dart';
|
import 'package:aves/model/entry/extensions/props.dart';
|
||||||
import 'package:aves/model/entry/sort.dart';
|
import 'package:aves/model/entry/sort.dart';
|
||||||
import 'package:aves/model/favourites.dart';
|
import 'package:aves/model/favourites.dart';
|
||||||
|
import 'package:aves/model/filters/covered/location.dart';
|
||||||
import 'package:aves/model/filters/covered/stored_album.dart';
|
import 'package:aves/model/filters/covered/stored_album.dart';
|
||||||
import 'package:aves/model/filters/favourite.dart';
|
import 'package:aves/model/filters/favourite.dart';
|
||||||
import 'package:aves/model/filters/filters.dart';
|
import 'package:aves/model/filters/filters.dart';
|
||||||
import 'package:aves/model/filters/covered/location.dart';
|
|
||||||
import 'package:aves/model/filters/mime.dart';
|
|
||||||
import 'package:aves/model/filters/query.dart';
|
import 'package:aves/model/filters/query.dart';
|
||||||
import 'package:aves/model/filters/rating.dart';
|
import 'package:aves/model/filters/rating.dart';
|
||||||
import 'package:aves/model/filters/trash.dart';
|
import 'package:aves/model/filters/trash.dart';
|
||||||
|
@ -230,7 +229,7 @@ class CollectionLens with ChangeNotifier {
|
||||||
void _stackDevelopedRaws() {
|
void _stackDevelopedRaws() {
|
||||||
final allRawEntries = _filteredSortedEntries.where((entry) => entry.isRaw).toSet();
|
final allRawEntries = _filteredSortedEntries.where((entry) => entry.isRaw).toSet();
|
||||||
if (allRawEntries.isNotEmpty) {
|
if (allRawEntries.isNotEmpty) {
|
||||||
final allDevelopedEntries = _filteredSortedEntries.where(MimeFilter(MimeTypes.jpeg).test).toSet();
|
final allDevelopedEntries = _filteredSortedEntries.where((entry) => MimeTypes.developedRawImages.contains(entry.mimeType)).toSet();
|
||||||
final rawEntriesByDir = groupBy<AvesEntry, String?>(allRawEntries, (entry) => entry.directory);
|
final rawEntriesByDir = groupBy<AvesEntry, String?>(allRawEntries, (entry) => entry.directory);
|
||||||
rawEntriesByDir.forEach((dir, dirRawEntries) {
|
rawEntriesByDir.forEach((dir, dirRawEntries) {
|
||||||
if (dir != null) {
|
if (dir != null) {
|
||||||
|
|
|
@ -86,6 +86,8 @@ class MimeTypes {
|
||||||
|
|
||||||
static const Set<String> rawImages = {arw, cr2, crw, dcr, dng, dngX, erf, k25, kdc, mrw, nef, nrw, orf, pef, raf, raw, rw2, sr2, srf, srw, x3f};
|
static const Set<String> rawImages = {arw, cr2, crw, dcr, dng, dngX, erf, k25, kdc, mrw, nef, nrw, orf, pef, raf, raw, rw2, sr2, srf, srw, x3f};
|
||||||
|
|
||||||
|
static const Set<String> developedRawImages = {jpeg, heic, heif};
|
||||||
|
|
||||||
static bool canHaveAlpha(String mimeType) => MimeTypes.alphaImages.contains(mimeType);
|
static bool canHaveAlpha(String mimeType) => MimeTypes.alphaImages.contains(mimeType);
|
||||||
|
|
||||||
static bool isRaw(String mimeType) => MimeTypes.rawImages.contains(mimeType);
|
static bool isRaw(String mimeType) => MimeTypes.rawImages.contains(mimeType);
|
||||||
|
|
Loading…
Reference in a new issue