diff --git a/CHANGELOG.md b/CHANGELOG.md index 7bb0e41f5..de1d2eb8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Added + +- Collection: allow hiding thumbnail overlay HDR icon + ## [v1.10.2] - 2023-12-24 ### Changed @@ -16,6 +20,8 @@ All notable changes to this project will be documented in this file. ## [v1.10.1] - 2023-12-21 +### Added + - Cataloguing: detect/filter `Ultra HDR` - Viewer: show JPEG MPF dependent images (except thumbnails and HDR gain maps) - Info: show metadata from JPEG MPF diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 2b32b01fb..10c2c673c 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -781,6 +781,7 @@ "settingsThumbnailSectionTitle": "Thumbnails", "settingsThumbnailOverlayTile": "Overlay", "settingsThumbnailOverlayPageTitle": "Overlay", + "settingsThumbnailShowHdrIcon": "Show HDR icon", "settingsThumbnailShowFavouriteIcon": "Show favorite icon", "settingsThumbnailShowTagIcon": "Show tag icon", "settingsThumbnailShowLocationIcon": "Show location icon", diff --git a/lib/model/app/dependencies.dart b/lib/model/app/dependencies.dart index 62836c974..ca745410f 100644 --- a/lib/model/app/dependencies.dart +++ b/lib/model/app/dependencies.dart @@ -74,9 +74,9 @@ class Dependencies { sourceUrl: 'https://github.com/material-foundation/flutter-packages/tree/main/packages/dynamic_color', ), Dependency( - name: 'FFmpegKit', + name: 'FFmpegKit (Aves fork)', license: lgpl3, - sourceUrl: 'https://github.com/arthenica/ffmpeg-kit', + sourceUrl: 'https://github.com/deckerst/ffmpeg-kit', ), Dependency( name: 'Floating', @@ -207,9 +207,9 @@ class Dependencies { static const List flutterPackages = [ Dependency( - name: 'Charts (fzyzcjy fork)', + name: 'Charts (Aves fork)', license: apache2, - sourceUrl: 'https://github.com/fzyzcjy/charts', + sourceUrl: 'https://github.com/deckerst/flutter_google_charts', ), Dependency( name: 'Custom rounded rectangle border', @@ -271,7 +271,7 @@ class Dependencies { Dependency( name: 'Panorama (Aves fork)', license: apache2, - sourceUrl: 'https://github.com/zesage/panorama', + sourceUrl: 'https://github.com/deckerst/aves_panorama', ), Dependency( name: 'Pattern Lock', diff --git a/lib/model/settings/defaults.dart b/lib/model/settings/defaults.dart index 416364766..3efed1af6 100644 --- a/lib/model/settings/defaults.dart +++ b/lib/model/settings/defaults.dart @@ -52,6 +52,7 @@ class SettingsDefaults { EntrySetAction.delete, ]; static const showThumbnailFavourite = true; + static const showThumbnailHdr = true; static const thumbnailLocationIcon = ThumbnailOverlayLocationIcon.none; static const thumbnailTagIcon = ThumbnailOverlayTagIcon.none; static const showThumbnailMotionPhoto = true; diff --git a/lib/model/settings/modules/collection.dart b/lib/model/settings/modules/collection.dart index cb973b78c..3a90fc600 100644 --- a/lib/model/settings/modules/collection.dart +++ b/lib/model/settings/modules/collection.dart @@ -30,6 +30,10 @@ mixin CollectionSettings on SettingsAccess { set showThumbnailFavourite(bool newValue) => set(SettingKeys.showThumbnailFavouriteKey, newValue); + bool get showThumbnailHdr => getBool(SettingKeys.showThumbnailHdrKey) ?? SettingsDefaults.showThumbnailHdr; + + set showThumbnailHdr(bool newValue) => set(SettingKeys.showThumbnailHdrKey, newValue); + ThumbnailOverlayLocationIcon get thumbnailLocationIcon => getEnumOrDefault(SettingKeys.thumbnailLocationIconKey, SettingsDefaults.thumbnailLocationIcon, ThumbnailOverlayLocationIcon.values); set thumbnailLocationIcon(ThumbnailOverlayLocationIcon newValue) => set(SettingKeys.thumbnailLocationIconKey, newValue.toString()); diff --git a/lib/model/settings/settings.dart b/lib/model/settings/settings.dart index 27956405a..82ca8b7bf 100644 --- a/lib/model/settings/settings.dart +++ b/lib/model/settings/settings.dart @@ -388,6 +388,7 @@ class Settings with ChangeNotifier, SettingsAccess, AppSettings, DisplaySettings case SettingKeys.setMetadataDateBeforeFileOpKey: case SettingKeys.collectionSortReverseKey: case SettingKeys.showThumbnailFavouriteKey: + case SettingKeys.showThumbnailHdrKey: case SettingKeys.showThumbnailMotionPhotoKey: case SettingKeys.showThumbnailRatingKey: case SettingKeys.showThumbnailRawKey: diff --git a/lib/widgets/common/grid/theme.dart b/lib/widgets/common/grid/theme.dart index dc63e793c..21c99d2d7 100644 --- a/lib/widgets/common/grid/theme.dart +++ b/lib/widgets/common/grid/theme.dart @@ -40,6 +40,7 @@ class GridTheme extends StatelessWidget { highlightBorderWidth: highlightBorderWidth, interactiveDimension: interactiveDimension, showFavourite: settings.showThumbnailFavourite, + showHdr: settings.showThumbnailHdr, locationIcon: showLocation ? settings.thumbnailLocationIcon : ThumbnailOverlayLocationIcon.none, tagIcon: settings.thumbnailTagIcon, showMotionPhoto: settings.showThumbnailMotionPhoto, @@ -58,7 +59,7 @@ typedef GridThemeIconBuilder = List Function(BuildContext context, AvesE class GridThemeData { final double iconSize, fontSize, highlightBorderWidth, interactiveDimension; - final bool showFavourite, showMotionPhoto, showRating, showRaw, showTrash, showVideoDuration; + final bool showFavourite, showHdr, showMotionPhoto, showRating, showRaw, showTrash, showVideoDuration; final bool showLocated, showUnlocated, showTagged, showUntagged; late final GridThemeIconBuilder iconBuilder; @@ -68,6 +69,7 @@ class GridThemeData { required this.highlightBorderWidth, required this.interactiveDimension, required this.showFavourite, + required this.showHdr, required ThumbnailOverlayLocationIcon locationIcon, required ThumbnailOverlayTagIcon tagIcon, required this.showMotionPhoto, @@ -97,7 +99,7 @@ class GridThemeData { if (entry.isRaw && showRaw) const RawIcon(), if (entry.is360) const PanoramaIcon(), ], - if (entry.isHdr) const HdrIcon(), + if (entry.isHdr && showHdr) const HdrIcon(), if (entry.isMotionPhoto && showMotionPhoto) const MotionPhotoIcon(), if (entry.isMultiPage && !entry.isMotionPhoto) MultiPageIcon(entry: entry), if (entry.isGeotiff) const GeoTiffIcon(), diff --git a/lib/widgets/settings/thumbnails/overlay.dart b/lib/widgets/settings/thumbnails/overlay.dart index a4904a372..fa839f214 100644 --- a/lib/widgets/settings/thumbnails/overlay.dart +++ b/lib/widgets/settings/thumbnails/overlay.dart @@ -66,6 +66,16 @@ class ThumbnailOverlayPage extends StatelessWidget { color: iconColor, ), ), + SettingsSwitchListTile( + selector: (context, s) => s.showThumbnailHdr, + onChanged: (v) => settings.showThumbnailHdr = v, + title: context.l10n.settingsThumbnailShowHdrIcon, + trailing: Icon( + AIcons.hdr, + size: iconSize, + color: iconColor, + ), + ), SettingsSwitchListTile( selector: (context, s) => s.showThumbnailRaw, onChanged: (v) => settings.showThumbnailRaw = v, diff --git a/plugins/aves_model/lib/src/settings/keys.dart b/plugins/aves_model/lib/src/settings/keys.dart index 77dd5b85e..9dd8791f1 100644 --- a/plugins/aves_model/lib/src/settings/keys.dart +++ b/plugins/aves_model/lib/src/settings/keys.dart @@ -60,6 +60,7 @@ class SettingKeys { static const collectionBrowsingQuickActionsKey = 'collection_browsing_quick_actions'; static const collectionSelectionQuickActionsKey = 'collection_selection_quick_actions'; static const showThumbnailFavouriteKey = 'show_thumbnail_favourite'; + static const showThumbnailHdrKey = 'show_thumbnail_hdr'; static const thumbnailLocationIconKey = 'thumbnail_location_icon'; static const thumbnailTagIconKey = 'thumbnail_tag_icon'; static const showThumbnailMotionPhotoKey = 'show_thumbnail_motion_photo'; diff --git a/untranslated.json b/untranslated.json index 5dad1ffde..836d305ab 100644 --- a/untranslated.json +++ b/untranslated.json @@ -1,4 +1,12 @@ { + "ar": [ + "settingsThumbnailShowHdrIcon" + ], + + "be": [ + "settingsThumbnailShowHdrIcon" + ], + "bn": [ "itemCount", "columnCount", @@ -460,6 +468,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -996,6 +1005,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -1192,10 +1202,15 @@ "filePickerUseThisFolder" ], + "cs": [ + "settingsThumbnailShowHdrIcon" + ], + "de": [ "entryActionCast", "overlayHistogramNone", - "castDialogTitle" + "castDialogTitle", + "settingsThumbnailShowHdrIcon" ], "el": [ @@ -1212,9 +1227,18 @@ "aboutDataUsageInternal", "aboutDataUsageExternal", "aboutDataUsageClearCache", + "settingsThumbnailShowHdrIcon", "settingsViewerShowHistogram" ], + "es": [ + "settingsThumbnailShowHdrIcon" + ], + + "eu": [ + "settingsThumbnailShowHdrIcon" + ], + "fa": [ "filterLocatedLabel", "filterTaggedLabel", @@ -1473,6 +1497,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -2012,6 +2037,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -2208,6 +2234,10 @@ "filePickerUseThisFolder" ], + "fr": [ + "settingsThumbnailShowHdrIcon" + ], + "gl": [ "columnCount", "saveCopyButtonLabel", @@ -2562,6 +2592,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -3240,6 +3271,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -3898,6 +3930,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -4094,9 +4127,22 @@ "filePickerUseThisFolder" ], + "hu": [ + "settingsThumbnailShowHdrIcon" + ], + "id": [ "entryActionCast", - "castDialogTitle" + "castDialogTitle", + "settingsThumbnailShowHdrIcon" + ], + + "is": [ + "settingsThumbnailShowHdrIcon" + ], + + "it": [ + "settingsThumbnailShowHdrIcon" ], "ja": [ @@ -4145,6 +4191,7 @@ "settingsAskEverytime", "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", + "settingsThumbnailShowHdrIcon", "settingsCollectionBurstPatternsTile", "settingsCollectionBurstPatternsNone", "settingsViewerShowHistogram", @@ -4619,6 +4666,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -4815,6 +4863,10 @@ "filePickerUseThisFolder" ], + "ko": [ + "settingsThumbnailShowHdrIcon" + ], + "lt": [ "columnCount", "saveCopyButtonLabel", @@ -4886,6 +4938,7 @@ "settingsAskEverytime", "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", + "settingsThumbnailShowHdrIcon", "settingsCollectionBurstPatternsTile", "settingsCollectionBurstPatternsNone", "settingsViewerShowHistogram", @@ -5391,6 +5444,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -5605,6 +5659,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsViewerEnableOverlayBlurEffect", "settingsHiddenItemsTabFilters", "settingsHiddenFiltersBanner", @@ -5716,6 +5771,7 @@ "aboutDataUsageInternal", "aboutDataUsageExternal", "aboutDataUsageClearCache", + "settingsThumbnailShowHdrIcon", "settingsCollectionBurstPatternsTile", "settingsCollectionBurstPatternsNone", "settingsViewerShowHistogram", @@ -5786,6 +5842,7 @@ "settingsAskEverytime", "settingsModificationWarningDialogMessage", "settingsConfirmationVaultDataLoss", + "settingsThumbnailShowHdrIcon", "settingsCollectionBurstPatternsTile", "settingsCollectionBurstPatternsNone", "settingsViewerShowHistogram", @@ -5836,6 +5893,7 @@ "collectionActionShowTitleSearch", "collectionActionHideTitleSearch", "drawerCollectionAnimated", + "settingsThumbnailShowHdrIcon", "settingsViewerShowHistogram", "settingsSlideshowAnimatedZoomEffect", "settingsHiddenItemsTabFilters", @@ -6264,6 +6322,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -6457,6 +6516,14 @@ "filePickerUseThisFolder" ], + "pl": [ + "settingsThumbnailShowHdrIcon" + ], + + "pt": [ + "settingsThumbnailShowHdrIcon" + ], + "ro": [ "saveCopyButtonLabel", "applyTooltip", @@ -6486,6 +6553,7 @@ "aboutDataUsageExternal", "aboutDataUsageClearCache", "settingsAskEverytime", + "settingsThumbnailShowHdrIcon", "settingsViewerShowHistogram", "settingsVideoPlaybackTile", "settingsVideoPlaybackPageTitle", @@ -6494,6 +6562,14 @@ "tagEditorDiscardDialogMessage" ], + "ru": [ + "settingsThumbnailShowHdrIcon" + ], + + "sk": [ + "settingsThumbnailShowHdrIcon" + ], + "sl": [ "itemCount", "columnCount", @@ -6976,6 +7052,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -7378,6 +7455,7 @@ "settingsThumbnailSectionTitle", "settingsThumbnailOverlayTile", "settingsThumbnailOverlayPageTitle", + "settingsThumbnailShowHdrIcon", "settingsThumbnailShowFavouriteIcon", "settingsThumbnailShowTagIcon", "settingsThumbnailShowLocationIcon", @@ -7639,6 +7717,7 @@ "searchStatesSectionTitle", "settingsAskEverytime", "settingsConfirmationVaultDataLoss", + "settingsThumbnailShowHdrIcon", "settingsCollectionBurstPatternsTile", "settingsCollectionBurstPatternsNone", "settingsViewerShowHistogram", @@ -7654,6 +7733,18 @@ "tagPlaceholderState" ], + "uk": [ + "settingsThumbnailShowHdrIcon" + ], + + "vi": [ + "settingsThumbnailShowHdrIcon" + ], + + "zh": [ + "settingsThumbnailShowHdrIcon" + ], + "zh_Hant": [ "entryActionCast", "overlayHistogramNone", @@ -7667,6 +7758,7 @@ "aboutDataUsageInternal", "aboutDataUsageExternal", "aboutDataUsageClearCache", + "settingsThumbnailShowHdrIcon", "settingsViewerShowHistogram" ] }