diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f2fd27f2..a39aab1a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +## [v1.9.1] - 2023-08-22 + +### Fixed + +- editing some WEBP corrupting them (by failing instead) + ## [v1.9.0] - 2023-08-21 ### Added @@ -24,6 +30,7 @@ All notable changes to this project will be documented in this file. ### Fixed - flickering when starting videos +- editing fragmented MP4 corrupting them (by failing instead) ## [v1.8.9] - 2023-06-04 diff --git a/android/app/src/main/kotlin/deckers/thibault/aves/model/provider/ImageProvider.kt b/android/app/src/main/kotlin/deckers/thibault/aves/model/provider/ImageProvider.kt index ac1624c5b..e73b2326f 100644 --- a/android/app/src/main/kotlin/deckers/thibault/aves/model/provider/ImageProvider.kt +++ b/android/app/src/main/kotlin/deckers/thibault/aves/model/provider/ImageProvider.kt @@ -6,6 +6,7 @@ import android.content.ContextWrapper import android.content.Intent import android.content.pm.PackageManager import android.graphics.Bitmap +import android.graphics.ImageDecoder import android.net.Uri import android.os.Binder import android.os.Build @@ -684,6 +685,14 @@ abstract class ImageProvider { throw Exception("editing Exif changes mimeType=$mimeType -> $editedMimeType for uri=$uri path=$path") } + if (mimeType == MimeTypes.WEBP && Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + // as of androidx.exifinterface:exifinterface:1.3.6, editing some specific WEBP + // makes them undecodable by some decoders (including Android's and Chrome's) + // even though `BitmapFactory` successfully decodes their bounds, + // so we check whether decoding it throws an exception + ImageDecoder.decodeBitmap(ImageDecoder.createSource(editableFile)) + } + if (videoBytes != null) { // append trailer video, if any editableFile.appendBytes(videoBytes!!) diff --git a/android/app/src/main/res/values-sk/strings.xml b/android/app/src/main/res/values-sk/strings.xml index 9a8ac434a..1385c6feb 100644 --- a/android/app/src/main/res/values-sk/strings.xml +++ b/android/app/src/main/res/values-sk/strings.xml @@ -8,4 +8,5 @@ Zastaviť Skenovanie médií Skenovanie média + Bezpečný režim \ No newline at end of file diff --git a/android/build.gradle b/android/build.gradle index fd0f3742e..10ae183fd 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -3,7 +3,7 @@ buildscript { kotlin_version = '1.8.21' ksp_version = "$kotlin_version-1.0.11" agp_version = '7.4.2' - glide_version = '4.15.1' + glide_version = '4.16.0' // AppGallery Connect plugin versions: https://developer.huawei.com/consumer/en/doc/development/AppGallery-connect-Guides/agc-sdk-changenotes-0000001058732550 huawei_agconnect_version = '1.9.1.300' abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, 'x86': 3, 'x86_64': 4] @@ -28,7 +28,7 @@ buildscript { if (useCrashlytics) { // GMS & Firebase Crashlytics (used by some flavors only) classpath 'com.google.gms:google-services:4.3.15' - classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.4' + classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.8' } if (useHms) { diff --git a/fastlane/metadata/android/en-US/changelogs/102.txt b/fastlane/metadata/android/en-US/changelogs/102.txt new file mode 100644 index 000000000..c5ba8521a --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/102.txt @@ -0,0 +1,5 @@ +In v1.9.1: +- play your animated AVIF, AV1, and HDR videos +- filter by rating ranges +- judge tonal distributions with the viewer histogram +Full changelog available on GitHub \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/changelogs/10201.txt b/fastlane/metadata/android/en-US/changelogs/10201.txt new file mode 100644 index 000000000..c5ba8521a --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/10201.txt @@ -0,0 +1,5 @@ +In v1.9.1: +- play your animated AVIF, AV1, and HDR videos +- filter by rating ranges +- judge tonal distributions with the viewer histogram +Full changelog available on GitHub \ No newline at end of file diff --git a/lib/l10n/app_it.arb b/lib/l10n/app_it.arb index 0089374c0..de0a3e196 100644 --- a/lib/l10n/app_it.arb +++ b/lib/l10n/app_it.arb @@ -1348,5 +1348,11 @@ "aboutDataUsageInternal": "Interno", "@aboutDataUsageInternal": {}, "aboutDataUsageExternal": "Esterno", - "@aboutDataUsageExternal": {} + "@aboutDataUsageExternal": {}, + "overlayHistogramNone": "Nessuno", + "@overlayHistogramNone": {}, + "overlayHistogramLuminance": "Luminanza", + "@overlayHistogramLuminance": {}, + "settingsViewerShowHistogram": "Mostra istogramma", + "@settingsViewerShowHistogram": {} } diff --git a/lib/l10n/app_sk.arb b/lib/l10n/app_sk.arb index 07321663d..d89fb6497 100644 --- a/lib/l10n/app_sk.arb +++ b/lib/l10n/app_sk.arb @@ -50,7 +50,7 @@ "@doubleBackExitMessage": {}, "welcomeOptional": "Voliteľné", "@welcomeOptional": {}, - "timeMinutes": "{minutes, plural, other{{minutes} minúty}}", + "timeMinutes": "{minutes, plural, =1{1 minúta} few{{minutes} minúty} other{{minutes} minút}}", "@timeMinutes": { "placeholders": { "minutes": {} @@ -452,5 +452,452 @@ "editEntryLocationDialogChooseOnMap": "Vybrať z mapy", "@editEntryLocationDialogChooseOnMap": {}, "viewerActionSettings": "Nastavenia", - "@viewerActionSettings": {} + "@viewerActionSettings": {}, + "tagPlaceholderState": "Štát", + "@tagPlaceholderState": {}, + "filePickerDoNotShowHiddenFiles": "Neukazovať skryté súbory", + "@filePickerDoNotShowHiddenFiles": {}, + "filterLocatedLabel": "Lokalizované", + "@filterLocatedLabel": {}, + "coordinateDms": "{coordinate} {direction}", + "@coordinateDms": { + "placeholders": { + "coordinate": { + "type": "String", + "example": "38° 41′ 47.72″" + }, + "direction": { + "type": "String", + "example": "S" + } + } + }, + "saveCopyButtonLabel": "Uložiť kópiu", + "@saveCopyButtonLabel": {}, + "applyTooltip": "Použiť", + "@applyTooltip": {}, + "chipActionShowCountryStates": "Zobraziť štáty", + "@chipActionShowCountryStates": {}, + "viewerActionUnlock": "Odomknúť pohľad", + "@viewerActionUnlock": {}, + "editorActionTransform": "Transformovať", + "@editorActionTransform": {}, + "editorTransformCrop": "Orezať", + "@editorTransformCrop": {}, + "editorTransformRotate": "Otočiť", + "@editorTransformRotate": {}, + "cropAspectRatioFree": "Uvoľniť", + "@cropAspectRatioFree": {}, + "cropAspectRatioOriginal": "Originál", + "@cropAspectRatioOriginal": {}, + "cropAspectRatioSquare": "Štvorec", + "@cropAspectRatioSquare": {}, + "filterNoLocationLabel": "Nelokalizované", + "@filterNoLocationLabel": {}, + "drawerTagPage": "Značky", + "@drawerTagPage": {}, + "aboutLicensesSectionTitle": "Open-Source Licencie", + "@aboutLicensesSectionTitle": {}, + "collectionSelectPageTitle": "Označiť položky", + "@collectionSelectPageTitle": {}, + "collectionPickPageTitle": "Vybrať", + "@collectionPickPageTitle": {}, + "collectionMoveSuccessFeedback": "{count, plural, =1{Položka bola presunutá} other{Bolo presunutých {count} položiek}}", + "@collectionMoveSuccessFeedback": { + "placeholders": { + "count": {} + } + }, + "drawerCountryPage": "Krajiny", + "@drawerCountryPage": {}, + "drawerPlacePage": "Miesta", + "@drawerPlacePage": {}, + "sortOrderNewestFirst": "Najskôr najnovšie", + "@sortOrderNewestFirst": {}, + "sortOrderAtoZ": "od A po Z", + "@sortOrderAtoZ": {}, + "chipActionLock": "Zamknúť", + "@chipActionLock": {}, + "sortByDate": "Podľa dátumu", + "@sortByDate": {}, + "collectionEmptyVideos": "Žiadne videá", + "@collectionEmptyVideos": {}, + "albumGroupNone": "Nezoskupovať", + "@albumGroupNone": {}, + "aboutDataUsageSectionTitle": "Využitie dát", + "@aboutDataUsageSectionTitle": {}, + "aboutDataUsageData": "Dáta", + "@aboutDataUsageData": {}, + "aboutDataUsageDatabase": "Databáza", + "@aboutDataUsageDatabase": {}, + "aboutDataUsageMisc": "Rôzne", + "@aboutDataUsageMisc": {}, + "aboutDataUsageInternal": "Interné", + "@aboutDataUsageInternal": {}, + "aboutDataUsageExternal": "Externé", + "@aboutDataUsageExternal": {}, + "collectionActionEmptyBin": "Vyprázdniť kôš", + "@collectionActionEmptyBin": {}, + "collectionActionCopy": "Kopírovať do albumu", + "@collectionActionCopy": {}, + "dateToday": "Dnes", + "@dateToday": {}, + "dateThisMonth": "Tento mesiac", + "@dateThisMonth": {}, + "collectionDeleteFailureFeedback": "{count, plural, =1{Nepodarilo sa odstrániť položku} other{Nepodarilo sa odstrániť {count} položiek} few{Nepodarilo sa odstrániť {count} položky}}", + "@collectionDeleteFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionCopySuccessFeedback": "{count, plural, =1{Položka bola skopírovaná} other{Bolo skopírovaných {count} položiek}}", + "@collectionCopySuccessFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionEditSuccessFeedback": "{count, plural, =1{Položka bola upravená} other{Bolo upravených {count} položiek}}", + "@collectionEditSuccessFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionEmptyFavourites": "Žiadne obľúbené", + "@collectionEmptyFavourites": {}, + "drawerCollectionSphericalVideos": "360° Videá", + "@drawerCollectionSphericalVideos": {}, + "drawerAlbumPage": "Albumy", + "@drawerAlbumPage": {}, + "sortByRating": "Podľa hodnotenia", + "@sortByRating": {}, + "deleteEntriesConfirmationDialogMessage": "{count, plural, =1{Odstrániť túto položku?} other{Odstrániť týchto {count} položiek?}}", + "@deleteEntriesConfirmationDialogMessage": { + "placeholders": { + "count": {} + } + }, + "exportEntryDialogWriteMetadata": "Zapísať metadáta", + "@exportEntryDialogWriteMetadata": {}, + "aboutBugCopyInfoButton": "Kopírovať", + "@aboutBugCopyInfoButton": {}, + "editEntryLocationDialogLongitude": "Zemepisná dĺžka", + "@editEntryLocationDialogLongitude": {}, + "editEntryRatingDialogTitle": "Hodnotenie", + "@editEntryRatingDialogTitle": {}, + "videoSpeedDialogLabel": "Rýchlosť prehrávania", + "@videoSpeedDialogLabel": {}, + "videoStreamSelectionDialogVideo": "Video", + "@videoStreamSelectionDialogVideo": {}, + "videoStreamSelectionDialogAudio": "Zvuk", + "@videoStreamSelectionDialogAudio": {}, + "videoStreamSelectionDialogOff": "Vypnúť", + "@videoStreamSelectionDialogOff": {}, + "videoStreamSelectionDialogNoSelection": "Žiadne iné položky.", + "@videoStreamSelectionDialogNoSelection": {}, + "genericFailureFeedback": "Nastala chyba", + "@genericFailureFeedback": {}, + "viewDialogLayoutSectionTitle": "Rozloženie", + "@viewDialogLayoutSectionTitle": {}, + "viewDialogReverseSortOrder": "Zoradiť opačne", + "@viewDialogReverseSortOrder": {}, + "tileLayoutList": "Zoznam", + "@tileLayoutList": {}, + "coverDialogTabCover": "Obálka", + "@coverDialogTabCover": {}, + "coverDialogTabApp": "Aplikácia", + "@coverDialogTabApp": {}, + "coverDialogTabColor": "Farba", + "@coverDialogTabColor": {}, + "aboutBugReportInstruction": "Nahlásiť na Github spolu so záznamami a systémovými informáciami", + "@aboutBugReportInstruction": {}, + "aboutLicensesAndroidLibrariesSectionTitle": "Android knižnice", + "@aboutLicensesAndroidLibrariesSectionTitle": {}, + "collectionSearchTitlesHintText": "Vyhľadávanie v nadpisoch", + "@collectionSearchTitlesHintText": {}, + "collectionEditFailureFeedback": "{count, plural, =1{Nepodarilo sa upraviť položku} few{Nepodarilo sa upraviť {count} položky} other{Nepodarilo sa upraviť {count} položiek}}", + "@collectionEditFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionEmptyImages": "Žiadne obrázky", + "@collectionEmptyImages": {}, + "sortOrderZtoA": "od Z po A", + "@sortOrderZtoA": {}, + "sortOrderLargestFirst": "Najväčšie prvé", + "@sortOrderLargestFirst": {}, + "sortOrderSmallestFirst": "Najmenšie prvé", + "@sortOrderSmallestFirst": {}, + "albumGroupType": "Podľa typu", + "@albumGroupType": {}, + "tagEditorDiscardDialogMessage": "Naozaj chceš zrušiť zmeny?", + "@tagEditorDiscardDialogMessage": {}, + "tagPlaceholderPlace": "Miesto", + "@tagPlaceholderPlace": {}, + "panoramaEnableSensorControl": "Povoliť senzory", + "@panoramaEnableSensorControl": {}, + "filePickerOpenFrom": "Otvoriť z", + "@filePickerOpenFrom": {}, + "filePickerUseThisFolder": "Použiť tento priečinok", + "@filePickerUseThisFolder": {}, + "itemCount": "{count, plural, =1{1 položka} other{{count} položiek}}", + "@itemCount": { + "placeholders": { + "count": {} + } + }, + "columnCount": "{count, plural, =1{1 stĺpec} few{{count} stĺpce} other{{count} stĺpcov}}", + "@columnCount": { + "placeholders": { + "count": {} + } + }, + "timeSeconds": "{seconds, plural, =1{1 sekunda} few{{seconds} sekundy} other{{seconds} sekúnd}}", + "@timeSeconds": { + "placeholders": { + "seconds": {} + } + }, + "drawerCollectionAnimated": "Animované", + "@drawerCollectionAnimated": {}, + "drawerCollectionMotionPhotos": "Fotky v pohybe", + "@drawerCollectionMotionPhotos": {}, + "sortOrderOldestFirst": "Najskôr najstaršie", + "@sortOrderOldestFirst": {}, + "tagEditorPageNewTagFieldLabel": "Nové označenie", + "@tagEditorPageNewTagFieldLabel": {}, + "tagEditorSectionRecent": "Nedávne", + "@tagEditorSectionRecent": {}, + "chipActionGoToPlacePage": "Otvoriť v miestach", + "@chipActionGoToPlacePage": {}, + "newVaultWarningDialogMessage": "Položky v trezoroch sú dostupné iba v tejto aplikácií\n\nAk aplikáciu odinštaluješ alebo vymažeš dáta aplikácie, stratíš všetky položky z trezorov.", + "@newVaultWarningDialogMessage": {}, + "newVaultDialogTitle": "Nový trezor", + "@newVaultDialogTitle": {}, + "genericSuccessFeedback": "Hotovo!", + "@genericSuccessFeedback": {}, + "dateYesterday": "Včera", + "@dateYesterday": {}, + "exportEntryDialogQuality": "Kvalita", + "@exportEntryDialogQuality": {}, + "locationPickerUseThisLocationButton": "Použiť túto polohu", + "@locationPickerUseThisLocationButton": {}, + "aboutCreditsWorldAtlas2": "pod ISC licenciou.", + "@aboutCreditsWorldAtlas2": {}, + "collectionPageTitle": "Kolekcie", + "@collectionPageTitle": {}, + "collectionActionMove": "Presunúť do albumu", + "@collectionActionMove": {}, + "viewerActionLock": "Uzamknúť pohľad", + "@viewerActionLock": {}, + "pinDialogEnter": "Vložiť PIN", + "@pinDialogEnter": {}, + "appPickDialogTitle": "Výber aplikácie", + "@appPickDialogTitle": {}, + "appPickDialogNone": "Nič", + "@appPickDialogNone": {}, + "collectionActionRescan": "Opätovné skenovanie", + "@collectionActionRescan": {}, + "albumTierVaults": "Trezory", + "@albumTierVaults": {}, + "vaultDialogLockTypeLabel": "Typ uzamknutia", + "@vaultDialogLockTypeLabel": {}, + "aboutCreditsWorldAtlas1": "Táto aplikácia používa TopoJSON súbor od", + "@aboutCreditsWorldAtlas1": {}, + "collectionActionAddShortcut": "Pridať skratku", + "@collectionActionAddShortcut": {}, + "collectionGroupAlbum": "Podľa albumu", + "@collectionGroupAlbum": {}, + "collectionGroupMonth": "Podľa mesiaca", + "@collectionGroupMonth": {}, + "collectionGroupDay": "Podľa dňa", + "@collectionGroupDay": {}, + "collectionEmptyGrantAccessButtonLabel": "Poskytnúť prístup", + "@collectionEmptyGrantAccessButtonLabel": {}, + "drawerCollectionRaws": "Raw fotky", + "@drawerCollectionRaws": {}, + "sortByItemCount": "Podľa počtu položiek", + "@sortByItemCount": {}, + "sortBySize": "Podľa veľkosti", + "@sortBySize": {}, + "sortByAlbumFileName": "Podľa albumu & názvu", + "@sortByAlbumFileName": {}, + "tagEditorPageAddTagTooltip": "Pridať označenie", + "@tagEditorPageAddTagTooltip": {}, + "deleteSingleAlbumConfirmationDialogMessage": "{count, plural, =1{Odstrániť tento album a položku v ňom?} other{Odstrániť tento album a {count} položiek v ňom?}}", + "@deleteSingleAlbumConfirmationDialogMessage": { + "placeholders": { + "count": {} + } + }, + "removeEntryMetadataDialogTitle": "Odstránenie metadát", + "@removeEntryMetadataDialogTitle": {}, + "removeEntryMetadataDialogMore": "Viac", + "@removeEntryMetadataDialogMore": {}, + "menuActionConfigureView": "Zobrazenie", + "@menuActionConfigureView": {}, + "tileLayoutGrid": "Mriežka", + "@tileLayoutGrid": {}, + "menuActionSelect": "Označiť", + "@menuActionSelect": {}, + "menuActionSelectAll": "Označiť všetko", + "@menuActionSelectAll": {}, + "menuActionSelectNone": "Nič neoznačiť", + "@menuActionSelectNone": {}, + "aboutBugSaveLogInstruction": "Uložiť záznamy aplikácie do súboru", + "@aboutBugSaveLogInstruction": {}, + "policyPageTitle": "Zásady súkromia", + "@policyPageTitle": {}, + "collectionActionShowTitleSearch": "Zobraziť filter", + "@collectionActionShowTitleSearch": {}, + "sectionUnknown": "Neznáme", + "@sectionUnknown": {}, + "collectionMoveFailureFeedback": "{count, plural, =1{Nepodarilo sa presunúť položku} few{Nepodarilo sa presunúť {count} položky} other{Nepodarilo sa presunúť {count} položiek}}", + "@collectionMoveFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionRenameFailureFeedback": "{count, plural, =1{Nepodarilo sa premenovať položku} few{Nepodarilo sa premenovať {count} položky} other{Nepodarilo sa premenovať {count} položiek}}", + "@collectionRenameFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "lengthUnitPixel": "px", + "@lengthUnitPixel": {}, + "configureVaultDialogTitle": "Nastavenie trezoru", + "@configureVaultDialogTitle": {}, + "passwordDialogEnter": "Zadaj heslo", + "@passwordDialogEnter": {}, + "vaultDialogLockModeWhenScreenOff": "Uzamknúť pri vypnutí obrazovky", + "@vaultDialogLockModeWhenScreenOff": {}, + "passwordDialogConfirm": "Potvrď heslo", + "@passwordDialogConfirm": {}, + "removeEntryMetadataMotionPhotoXmpWarningDialogMessage": "XMP je potrebné pre prehranie videa vo vnútri pohyblivej fotky.\n\nUrčite to chceš odstrániť?", + "@removeEntryMetadataMotionPhotoXmpWarningDialogMessage": {}, + "videoStreamSelectionDialogText": "Titulky", + "@videoStreamSelectionDialogText": {}, + "genericDangerWarningDialogMessage": "Si si istý?", + "@genericDangerWarningDialogMessage": {}, + "tooManyItemsErrorDialogMessage": "Skús znova s menším počtom položiek.", + "@tooManyItemsErrorDialogMessage": {}, + "viewDialogSortSectionTitle": "Zoradiť", + "@viewDialogSortSectionTitle": {}, + "aboutBugCopyInfoInstruction": "Kopírovať systémové informácie", + "@aboutBugCopyInfoInstruction": {}, + "viewDialogGroupSectionTitle": "Zoskupiť", + "@viewDialogGroupSectionTitle": {}, + "aboutBugReportButton": "Nahlásiť", + "@aboutBugReportButton": {}, + "deleteMultiAlbumConfirmationDialogMessage": "{count, plural, =1{Odstrániť tieto albumy a položku v nich?} other{Odstrániť tieto albumy a {count} položiek v nich?}}", + "@deleteMultiAlbumConfirmationDialogMessage": { + "placeholders": { + "count": {} + } + }, + "aboutTranslatorsSectionTitle": "Prekladatelia", + "@aboutTranslatorsSectionTitle": {}, + "aboutLicensesBanner": "Táto aplikácia používa nasledujúce open-source balíčky a knižnice.", + "@aboutLicensesBanner": {}, + "aboutLicensesFlutterPluginsSectionTitle": "Flutter Pluginy", + "@aboutLicensesFlutterPluginsSectionTitle": {}, + "aboutLicensesDartPackagesSectionTitle": "Dart Balíčky", + "@aboutLicensesDartPackagesSectionTitle": {}, + "collectionActionHideTitleSearch": "Skryť filter", + "@collectionActionHideTitleSearch": {}, + "collectionActionEdit": "Upraviť", + "@collectionActionEdit": {}, + "collectionGroupNone": "Nezoskupovať", + "@collectionGroupNone": {}, + "aboutLicensesShowAllButtonLabel": "Zobraziť všetky licencie", + "@aboutLicensesShowAllButtonLabel": {}, + "collectionCopyFailureFeedback": "{count, plural, =1{Nepodarilo sa kopírovať položku} few{Nepodarilo sa kopírovať {count} položky} other{Nepodarilo sa kopírovať {count} položiek}}", + "@collectionCopyFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionExportFailureFeedback": "{count, plural, =1{Nepodarilo sa exportovať stránku} other{Nepodarilo sa exportovať {count} stránok}}", + "@collectionExportFailureFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionRenameSuccessFeedback": "{count, plural, =1{Položka bola premenovaná} other{Bolo premenovaných {count} položiek}}", + "@collectionRenameSuccessFeedback": { + "placeholders": { + "count": {} + } + }, + "collectionSelectSectionTooltip": "Označiť sekciu", + "@collectionSelectSectionTooltip": {}, + "collectionDeselectSectionTooltip": "Odznačiť sekciu", + "@collectionDeselectSectionTooltip": {}, + "drawerCollectionImages": "Obrázky", + "@drawerCollectionImages": {}, + "drawerCollectionVideos": "Videá", + "@drawerCollectionVideos": {}, + "drawerCollectionPanoramas": "Panorámy", + "@drawerCollectionPanoramas": {}, + "sortByName": "Podľa názvu", + "@sortByName": {}, + "chipActionCreateVault": "Vytvoriť trezor", + "@chipActionCreateVault": {}, + "chipActionConfigureVault": "Nastaviť trezor", + "@chipActionConfigureVault": {}, + "menuActionMap": "Mapa", + "@menuActionMap": {}, + "menuActionSlideshow": "Prezentácia", + "@menuActionSlideshow": {}, + "menuActionStats": "Štatistiky", + "@menuActionStats": {}, + "tileLayoutMosaic": "Mozaika", + "@tileLayoutMosaic": {}, + "drawerCollectionAll": "Všetky kolekcie", + "@drawerCollectionAll": {}, + "binEntriesConfirmationDialogMessage": "{count, plural, =1{Presunúť túto položku do koša?} other{Presunúť týchto {count} položiek do koša?}}", + "@binEntriesConfirmationDialogMessage": { + "placeholders": { + "count": {} + } + }, + "patternDialogEnter": "Nastavenie vzoru", + "@patternDialogEnter": {}, + "patternDialogConfirm": "Potvrď vzor", + "@patternDialogConfirm": {}, + "pinDialogConfirm": "Potvrď PIN", + "@pinDialogConfirm": {}, + "authenticateToUnlockVault": "Pre odomknutie trezora je potrebné prihlásenie", + "@authenticateToUnlockVault": {}, + "vaultBinUsageDialogMessage": "Niektoré trezory používajú kôš.", + "@vaultBinUsageDialogMessage": {}, + "editEntryLocationDialogLatitude": "Zemepisná šírka", + "@editEntryLocationDialogLatitude": {}, + "aboutLinkLicense": "Licencia", + "@aboutLinkLicense": {}, + "aboutLinkPolicy": "Zásady súkromia", + "@aboutLinkPolicy": {}, + "aboutBugSectionTitle": "Nahlásenie chyby", + "@aboutBugSectionTitle": {}, + "aboutLicensesFlutterPackagesSectionTitle": "Flutter Balíčky", + "@aboutLicensesFlutterPackagesSectionTitle": {}, + "drawerAboutButton": "O aplikácií", + "@drawerAboutButton": {}, + "drawerSettingsButton": "Nastavenia", + "@drawerSettingsButton": {}, + "drawerCollectionFavourites": "Obľúbené", + "@drawerCollectionFavourites": {}, + "tagPlaceholderCountry": "Krajina", + "@tagPlaceholderCountry": {}, + "filePickerNoItems": "Žiadne súbory", + "@filePickerNoItems": {}, + "panoramaDisableSensorControl": "Zakázať senzory", + "@panoramaDisableSensorControl": {}, + "sourceViewerPageTitle": "Zdroj", + "@sourceViewerPageTitle": {}, + "filePickerShowHiddenFiles": "Ukázať skryté súbory", + "@filePickerShowHiddenFiles": {}, + "aboutPageTitle": "O aplikácií", + "@aboutPageTitle": {} } diff --git a/lib/model/app/dependencies.dart b/lib/model/app/dependencies.dart index 1c72094d2..57600cf97 100644 --- a/lib/model/app/dependencies.dart +++ b/lib/model/app/dependencies.dart @@ -5,6 +5,7 @@ class Dependencies { static const String bsd2 = 'BSD 2-Clause “Simplified” License'; static const String bsd3 = 'BSD 3-Clause “Revised” License'; static const String eclipse1 = 'Eclipse Public License 1.0'; + static const String lgpl3 = 'GNU Lesser General Public License v3.0'; static const String mit = 'MIT License'; static const String zlib = 'zlib License'; @@ -71,11 +72,6 @@ class Dependencies { license: bsd3, sourceUrl: 'https://github.com/material-foundation/material-dynamic-color-flutter', ), - Dependency( - name: 'fijkplayer (Aves fork)', - license: mit, - sourceUrl: 'https://github.com/deckerst/fijkplayer', - ), Dependency( name: 'Floating', license: mit, @@ -92,6 +88,11 @@ class Dependencies { licenseUrl: 'https://github.com/flutter/packages/blob/main/packages/local_auth/local_auth/LICENSE', sourceUrl: 'https://github.com/flutter/packages/tree/main/packages/local_auth/local_auth', ), + Dependency( + name: 'FFmpegKit', + license: lgpl3, + sourceUrl: 'https://github.com/arthenica/ffmpeg-kit', + ), Dependency( name: 'Media Kit', license: mit, diff --git a/plugins/aves_video_mpv/pubspec.lock b/plugins/aves_video_mpv/pubspec.lock index a7006875d..7126a63d2 100644 --- a/plugins/aves_video_mpv/pubspec.lock +++ b/plugins/aves_video_mpv/pubspec.lock @@ -308,10 +308,10 @@ packages: dependency: transitive description: name: screen_brightness_windows - sha256: "80d90ecdc63fc0823f2ecb1be323471619287937e14210650d7b25ca181abd05" + sha256: db39219ce99aecd697a86a47f0c1866977e50ea5d881e7224aee26f48c27c6a4 url: "https://pub.dev" source: hosted - version: "0.1.1" + version: "0.1.2" sky_engine: dependency: transitive description: flutter diff --git a/pubspec.lock b/pubspec.lock index fb19c76ac..ffdb486f9 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1237,10 +1237,10 @@ packages: dependency: transitive description: name: screen_brightness_windows - sha256: "80d90ecdc63fc0823f2ecb1be323471619287937e14210650d7b25ca181abd05" + sha256: db39219ce99aecd697a86a47f0c1866977e50ea5d881e7224aee26f48c27c6a4 url: "https://pub.dev" source: hosted - version: "0.1.1" + version: "0.1.2" shared_preferences: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 451bf324a..0b72510ed 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -5,9 +5,9 @@ repository: https://github.com/deckerst/aves # - pubspec version # - github changelog: /CHANGELOG.md # - play changelog: /whatsnew/whatsnew-en-US -# - izzy changelog: /fastlane/metadata/android/en-US/changelogs/XX01.txt -# - libre changelog: /fastlane/metadata/android/en-US/changelogs/XX.txt -version: 1.9.0+101 +# - izzy changelog: /fastlane/metadata/android/en-US/changelogs/XXX01.txt +# - libre changelog: /fastlane/metadata/android/en-US/changelogs/XXX.txt +version: 1.9.1+102 publish_to: none environment: diff --git a/untranslated.json b/untranslated.json index 56bea6c8e..93483949c 100644 --- a/untranslated.json +++ b/untranslated.json @@ -4080,10 +4080,7 @@ ], "it": [ - "overlayHistogramNone", - "overlayHistogramRGB", - "overlayHistogramLuminance", - "settingsViewerShowHistogram" + "overlayHistogramRGB" ], "ja": [ @@ -6998,29 +6995,6 @@ ], "sk": [ - "itemCount", - "columnCount", - "timeSeconds", - "saveCopyButtonLabel", - "applyTooltip", - "chipActionGoToPlacePage", - "chipActionLock", - "chipActionShowCountryStates", - "chipActionCreateVault", - "chipActionConfigureVault", - "viewerActionLock", - "viewerActionUnlock", - "editorActionTransform", - "editorTransformCrop", - "editorTransformRotate", - "cropAspectRatioFree", - "cropAspectRatioOriginal", - "cropAspectRatioSquare", - "filterLocatedLabel", - "filterNoLocationLabel", - "albumTierVaults", - "coordinateDms", - "lengthUnitPixel", "lengthUnitPercent", "maxBrightnessNever", "maxBrightnessAlways", @@ -7039,160 +7013,14 @@ "restrictedAccessDialogMessage", "notEnoughSpaceDialogMessage", "unsupportedTypeDialogMessage", - "binEntriesConfirmationDialogMessage", - "deleteEntriesConfirmationDialogMessage", - "newVaultWarningDialogMessage", - "newVaultDialogTitle", - "configureVaultDialogTitle", - "vaultDialogLockModeWhenScreenOff", - "vaultDialogLockTypeLabel", - "patternDialogEnter", - "patternDialogConfirm", - "pinDialogEnter", - "pinDialogConfirm", - "passwordDialogEnter", - "passwordDialogConfirm", "authenticateToConfigureVault", - "authenticateToUnlockVault", - "vaultBinUsageDialogMessage", - "deleteSingleAlbumConfirmationDialogMessage", - "deleteMultiAlbumConfirmationDialogMessage", - "exportEntryDialogQuality", - "exportEntryDialogWriteMetadata", - "editEntryLocationDialogLatitude", - "editEntryLocationDialogLongitude", - "locationPickerUseThisLocationButton", - "editEntryRatingDialogTitle", - "removeEntryMetadataDialogTitle", - "removeEntryMetadataDialogMore", - "removeEntryMetadataMotionPhotoXmpWarningDialogMessage", - "videoSpeedDialogLabel", - "videoStreamSelectionDialogVideo", - "videoStreamSelectionDialogAudio", - "videoStreamSelectionDialogText", - "videoStreamSelectionDialogOff", "videoStreamSelectionDialogTrack", - "videoStreamSelectionDialogNoSelection", - "genericSuccessFeedback", - "genericFailureFeedback", - "genericDangerWarningDialogMessage", - "tooManyItemsErrorDialogMessage", - "menuActionConfigureView", - "menuActionSelect", - "menuActionSelectAll", - "menuActionSelectNone", - "menuActionMap", - "menuActionSlideshow", - "menuActionStats", - "viewDialogSortSectionTitle", - "viewDialogGroupSectionTitle", - "viewDialogLayoutSectionTitle", - "viewDialogReverseSortOrder", - "tileLayoutMosaic", - "tileLayoutGrid", - "tileLayoutList", - "coverDialogTabCover", - "coverDialogTabApp", - "coverDialogTabColor", - "appPickDialogTitle", - "appPickDialogNone", - "aboutPageTitle", - "aboutLinkLicense", - "aboutLinkPolicy", - "aboutBugSectionTitle", - "aboutBugSaveLogInstruction", - "aboutBugCopyInfoInstruction", - "aboutBugCopyInfoButton", - "aboutBugReportInstruction", - "aboutBugReportButton", - "aboutDataUsageSectionTitle", - "aboutDataUsageData", "aboutDataUsageCache", - "aboutDataUsageDatabase", - "aboutDataUsageMisc", - "aboutDataUsageInternal", - "aboutDataUsageExternal", "aboutCreditsSectionTitle", - "aboutCreditsWorldAtlas1", - "aboutCreditsWorldAtlas2", - "aboutTranslatorsSectionTitle", - "aboutLicensesSectionTitle", - "aboutLicensesBanner", - "aboutLicensesAndroidLibrariesSectionTitle", - "aboutLicensesFlutterPluginsSectionTitle", - "aboutLicensesFlutterPackagesSectionTitle", - "aboutLicensesDartPackagesSectionTitle", - "aboutLicensesShowAllButtonLabel", - "policyPageTitle", - "collectionPageTitle", - "collectionPickPageTitle", - "collectionSelectPageTitle", - "collectionActionShowTitleSearch", - "collectionActionHideTitleSearch", - "collectionActionAddShortcut", - "collectionActionEmptyBin", - "collectionActionCopy", - "collectionActionMove", - "collectionActionRescan", - "collectionActionEdit", - "collectionSearchTitlesHintText", - "collectionGroupAlbum", - "collectionGroupMonth", - "collectionGroupDay", - "collectionGroupNone", - "sectionUnknown", - "dateToday", - "dateYesterday", - "dateThisMonth", - "collectionDeleteFailureFeedback", - "collectionCopyFailureFeedback", - "collectionMoveFailureFeedback", - "collectionRenameFailureFeedback", - "collectionEditFailureFeedback", - "collectionExportFailureFeedback", - "collectionCopySuccessFeedback", - "collectionMoveSuccessFeedback", - "collectionRenameSuccessFeedback", - "collectionEditSuccessFeedback", - "collectionEmptyFavourites", - "collectionEmptyVideos", - "collectionEmptyImages", - "collectionEmptyGrantAccessButtonLabel", - "collectionSelectSectionTooltip", - "collectionDeselectSectionTooltip", - "drawerAboutButton", - "drawerSettingsButton", - "drawerCollectionAll", - "drawerCollectionFavourites", - "drawerCollectionImages", - "drawerCollectionVideos", - "drawerCollectionAnimated", - "drawerCollectionMotionPhotos", - "drawerCollectionPanoramas", - "drawerCollectionRaws", - "drawerCollectionSphericalVideos", - "drawerAlbumPage", - "drawerCountryPage", - "drawerPlacePage", - "drawerTagPage", - "sortByDate", - "sortByName", - "sortByItemCount", - "sortBySize", - "sortByAlbumFileName", - "sortByRating", - "sortOrderNewestFirst", - "sortOrderOldestFirst", - "sortOrderAtoZ", - "sortOrderZtoA", "sortOrderHighestFirst", "sortOrderLowestFirst", - "sortOrderLargestFirst", - "sortOrderSmallestFirst", "albumGroupTier", - "albumGroupType", "albumGroupVolume", - "albumGroupNone", "albumMimeTypeMixed", "albumPickPageTitleCopy", "albumPickPageTitleExport", @@ -7443,22 +7271,7 @@ "viewerInfoSearchSuggestionRights", "wallpaperUseScrollEffect", "tagEditorPageTitle", - "tagEditorPageNewTagFieldLabel", - "tagEditorPageAddTagTooltip", - "tagEditorSectionRecent", - "tagEditorSectionPlaceholders", - "tagEditorDiscardDialogMessage", - "tagPlaceholderCountry", - "tagPlaceholderState", - "tagPlaceholderPlace", - "panoramaEnableSensorControl", - "panoramaDisableSensorControl", - "sourceViewerPageTitle", - "filePickerShowHiddenFiles", - "filePickerDoNotShowHiddenFiles", - "filePickerOpenFrom", - "filePickerNoItems", - "filePickerUseThisFolder" + "tagEditorSectionPlaceholders" ], "sl": [ diff --git a/whatsnew/whatsnew-en-US b/whatsnew/whatsnew-en-US index ac542c6e0..c5ba8521a 100644 --- a/whatsnew/whatsnew-en-US +++ b/whatsnew/whatsnew-en-US @@ -1,4 +1,4 @@ -In v1.9.0: +In v1.9.1: - play your animated AVIF, AV1, and HDR videos - filter by rating ranges - judge tonal distributions with the viewer histogram