diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 472b59cae..a89aaabb3 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -161,6 +161,8 @@ "@filterTypeMotionPhotoLabel": {}, "filterTypePanoramaLabel": "Panorama", "@filterTypePanoramaLabel": {}, + "filterTypeRawLabel": "Raw", + "@filterTypeRawLabel": {}, "filterTypeSphericalVideoLabel": "360° Video", "@filterTypeSphericalVideoLabel": {}, "filterTypeGeotiffLabel": "GeoTIFF", @@ -577,6 +579,8 @@ "@drawerCollectionMotionPhotos": {}, "drawerCollectionPanoramas": "Panoramas", "@drawerCollectionPanoramas": {}, + "drawerCollectionRaws": "Raw photos", + "@drawerCollectionRaws": {}, "drawerCollectionSphericalVideos": "360° Videos", "@drawerCollectionSphericalVideos": {}, diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index dcecf8d39..472bb957c 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -79,6 +79,7 @@ "filterTypeAnimatedLabel": "애니메이션", "filterTypeMotionPhotoLabel": "모션 포토", "filterTypePanoramaLabel": "파노라마", + "filterTypeRawLabel": "Raw", "filterTypeSphericalVideoLabel": "360° 동영상", "filterTypeGeotiffLabel": "GeoTIFF", "filterMimeImageLabel": "사진", @@ -269,6 +270,7 @@ "drawerCollectionVideos": "동영상", "drawerCollectionMotionPhotos": "모션 포토", "drawerCollectionPanoramas": "파노라마", + "drawerCollectionRaws": "Raw 이미지", "drawerCollectionSphericalVideos": "360° 동영상", "chipSortTitle": "정렬", @@ -350,7 +352,7 @@ "settingsViewerShowShootingDetails": "촬영 정보 표시", "settingsViewerEnableOverlayBlurEffect": "오버레이 흐림 효과", "settingsViewerUseCutout": "컷아웃 영역 사용", - "settingsImageBackground": "사진 배경", + "settingsImageBackground": "이미지 배경", "settingsViewerQuickActionsTile": "빠른 작업", "settingsViewerQuickActionEditorTitle": "빠른 작업", diff --git a/lib/model/filters/type.dart b/lib/model/filters/type.dart index ff7d79b9b..b445c3e7d 100644 --- a/lib/model/filters/type.dart +++ b/lib/model/filters/type.dart @@ -10,6 +10,7 @@ class TypeFilter extends CollectionFilter { static const _geotiff = 'geotiff'; // subset of `image/tiff` static const _motionPhoto = 'motion_photo'; // subset of `image/jpeg` static const _panorama = 'panorama'; // subset of images + static const _raw = 'raw'; // specific image formats static const _sphericalVideo = 'spherical_video'; // subset of videos final String itemType; @@ -20,6 +21,7 @@ class TypeFilter extends CollectionFilter { static final geotiff = TypeFilter._private(_geotiff); static final motionPhoto = TypeFilter._private(_motionPhoto); static final panorama = TypeFilter._private(_panorama); + static final raw = TypeFilter._private(_raw); static final sphericalVideo = TypeFilter._private(_sphericalVideo); @override @@ -43,6 +45,10 @@ class TypeFilter extends CollectionFilter { _test = (entry) => entry.isImage && entry.is360; _icon = AIcons.threeSixty; break; + case _raw: + _test = (entry) => entry.isRaw; + _icon = AIcons.raw; + break; case _sphericalVideo: _test = (entry) => entry.isVideo && entry.is360; _icon = AIcons.threeSixty; @@ -76,6 +82,8 @@ class TypeFilter extends CollectionFilter { return context.l10n.filterTypeMotionPhotoLabel; case _panorama: return context.l10n.filterTypePanoramaLabel; + case _raw: + return context.l10n.filterTypeRawLabel; case _sphericalVideo: return context.l10n.filterTypeSphericalVideoLabel; case _geotiff: diff --git a/lib/widgets/drawer/tile.dart b/lib/widgets/drawer/tile.dart index 575aa6483..54daa7fea 100644 --- a/lib/widgets/drawer/tile.dart +++ b/lib/widgets/drawer/tile.dart @@ -48,6 +48,7 @@ class DrawerFilterTitle extends StatelessWidget { if (filter == MimeFilter.video) return l10n.drawerCollectionVideos; if (filter == TypeFilter.motionPhoto) return l10n.drawerCollectionMotionPhotos; if (filter == TypeFilter.panorama) return l10n.drawerCollectionPanoramas; + if (filter == TypeFilter.raw) return l10n.drawerCollectionRaws; if (filter == TypeFilter.sphericalVideo) return l10n.drawerCollectionSphericalVideos; return filter.getLabel(context); } diff --git a/lib/widgets/search/search_delegate.dart b/lib/widgets/search/search_delegate.dart index fe79bce05..3796eb7a2 100644 --- a/lib/widgets/search/search_delegate.dart +++ b/lib/widgets/search/search_delegate.dart @@ -40,6 +40,7 @@ class CollectionSearchDelegate { TypeFilter.panorama, TypeFilter.sphericalVideo, TypeFilter.geotiff, + TypeFilter.raw, MimeFilter(MimeTypes.svg), ]; diff --git a/lib/widgets/viewer/info/basic_section.dart b/lib/widgets/viewer/info/basic_section.dart index a4642f5c2..8fa125ab9 100644 --- a/lib/widgets/viewer/info/basic_section.dart +++ b/lib/widgets/viewer/info/basic_section.dart @@ -85,6 +85,7 @@ class BasicSection extends StatelessWidget { if (entry.isAnimated) TypeFilter.animated, if (entry.isGeotiff) TypeFilter.geotiff, if (entry.isMotionPhoto) TypeFilter.motionPhoto, + if (entry.isRaw) TypeFilter.raw, if (entry.isImage && entry.is360) TypeFilter.panorama, if (entry.isVideo && entry.is360) TypeFilter.sphericalVideo, if (entry.isVideo && !entry.is360) MimeFilter.video,