Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
deckerst committed Nov 24, 2024
2 parents c62e683 + cc58f91 commit 1d7deac
Show file tree
Hide file tree
Showing 62 changed files with 357 additions and 124 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

- name: 'Checkout Repository'
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: 'Dependency Review'
uses: actions/dependency-review-action@4081bf99e2866ebe428fc0477b69eb4fcda7220a # v4.4.0
uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0
8 changes: 4 additions & 4 deletions .github/workflows/quality-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

Expand Down Expand Up @@ -52,7 +52,7 @@ jobs:
build-mode: manual
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

Expand All @@ -69,7 +69,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@ea9e4e37992a54ee68a9622e985e60c8e8f12d9f # v3.27.4
uses: github/codeql-action/init@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
Expand All @@ -83,6 +83,6 @@ jobs:
./flutterw build apk --profile -t lib/main_play.dart --flavor play
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@ea9e4e37992a54ee68a9622e985e60c8e8f12d9f # v3.27.4
uses: github/codeql-action/analyze@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
with:
category: "/language:${{matrix.language}}"
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
id-token: write
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

Expand Down Expand Up @@ -98,7 +98,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/scorecards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:

steps:
- name: Harden Runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
uses: step-security/harden-runner@0080882f6c36860b6ba35c610c98ce87d4e2f26f # v2.10.2
with:
egress-policy: audit

Expand Down Expand Up @@ -71,6 +71,6 @@ jobs:

# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@ea9e4e37992a54ee68a9622e985e60c8e8f12d9f # v3.27.4
uses: github/codeql-action/upload-sarif@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
with:
sarif_file: results.sarif
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.

## <a id="unreleased"></a>[Unreleased]

## <a id="v1.11.19"></a>[v1.11.19] - 2024-11-24

### Added

- integrate with OS app language settings on Android >=14

### Changed

- remember title filter visibility by page

## <a id="v1.11.18"></a>[v1.11.18] - 2024-11-18

### Changed
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
package deckers.thibault.aves.channel.calls

import android.app.LocaleConfig
import android.app.LocaleManager
import android.content.Context
import android.content.Intent
import android.content.res.Resources
import android.location.Geocoder
import android.net.Uri
import android.os.Build
import android.os.LocaleList
import android.provider.MediaStore
import android.provider.Settings
import androidx.core.content.pm.ShortcutManagerCompat
Expand All @@ -30,8 +33,8 @@ class DeviceHandler(private val context: Context) : MethodCallHandler {
when (call.method) {
"canManageMedia" -> safe(call, result, ::canManageMedia)
"getCapabilities" -> defaultScope.launch { safe(call, result, ::getCapabilities) }
"getDefaultTimeZoneRawOffsetMillis" -> safe(call, result, ::getDefaultTimeZoneRawOffsetMillis)
"getLocales" -> safe(call, result, ::getLocales)
"setLocaleConfig" -> safe(call, result, ::setLocaleConfig)
"getPerformanceClass" -> safe(call, result, ::getPerformanceClass)
"isLocked" -> safe(call, result, ::isLocked)
"isSystemFilePickerEnabled" -> safe(call, result, ::isSystemFilePickerEnabled)
Expand Down Expand Up @@ -63,10 +66,6 @@ class DeviceHandler(private val context: Context) : MethodCallHandler {
)
}

private fun getDefaultTimeZoneRawOffsetMillis(@Suppress("unused_parameter") call: MethodCall, result: MethodChannel.Result) {
result.success(TimeZone.getDefault().rawOffset)
}

private fun getLocales(@Suppress("unused_parameter") call: MethodCall, result: MethodChannel.Result) {
fun toMap(locale: Locale): FieldMap = hashMapOf(
"language" to locale.language,
Expand All @@ -88,6 +87,21 @@ class DeviceHandler(private val context: Context) : MethodCallHandler {
result.success(locales)
}

private fun setLocaleConfig(call: MethodCall, result: MethodChannel.Result) {
val locales = call.argument<List<String>>("locales")
if (locales.isNullOrEmpty()) {
result.error("setLocaleConfig-args", "missing arguments", null)
return
}

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
val lm = context.getSystemService(Context.LOCALE_SERVICE) as? LocaleManager
lm?.overrideLocaleConfig = LocaleConfig(LocaleList.forLanguageTags(locales.joinToString(",")))
}

result.success(true)
}

private fun getPerformanceClass(@Suppress("unused_parameter") call: MethodCall, result: MethodChannel.Result) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val performanceClass = Build.VERSION.MEDIA_PERFORMANCE_CLASS
Expand Down
1 change: 1 addition & 0 deletions android/app/src/main/res/values-hi/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@
<string name="analysis_channel_name">मीडिया जाँचे</string>
<string name="app_name">ऐवीज</string>
<string name="videos_shortcut_short_label">वीडियो</string>
<string name="map_shortcut_short_label">मैप</string>
</resources>
5 changes: 5 additions & 0 deletions fastlane/metadata/android/en-US/changelogs/138.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
In v1.11.19:
- peruse your videos frame by frame
- create map shortcuts to filtered collections
- enjoy the app in Shavian
Full changelog available on GitHub
5 changes: 5 additions & 0 deletions fastlane/metadata/android/en-US/changelogs/13801.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
In v1.11.19:
- peruse your videos frame by frame
- create map shortcuts to filtered collections
- enjoy the app in Shavian
Full changelog available on GitHub
4 changes: 3 additions & 1 deletion lib/l10n/app_en_Shaw.arb
Original file line number Diff line number Diff line change
Expand Up @@ -1589,5 +1589,7 @@
"videoActionShowPreviousFrame": "𐑖𐑴 𐑐𐑮𐑰𐑝𐑾𐑕 𐑓𐑮𐑱𐑥",
"@videoActionShowPreviousFrame": {},
"videoActionShowNextFrame": "𐑖𐑴 𐑯𐑧𐑒𐑕𐑑 𐑓𐑮𐑱𐑥",
"@videoActionShowNextFrame": {}
"@videoActionShowNextFrame": {},
"newAlbumDialogAlbumAlreadyExistsHelper": "𐑨𐑤𐑚𐑩𐑥 𐑷𐑤𐑮𐑧𐑛𐑦 𐑦𐑜𐑟𐑦𐑕𐑑𐑕",
"@newAlbumDialogAlbumAlreadyExistsHelper": {}
}
175 changes: 174 additions & 1 deletion lib/l10n/app_et.arb
Original file line number Diff line number Diff line change
Expand Up @@ -464,5 +464,178 @@
"videoLoopModeAlways": "Alati",
"@videoLoopModeAlways": {},
"unitSystemMetric": "Meetermõõdustik",
"@unitSystemMetric": {}
"@unitSystemMetric": {},
"viewerTransitionZoomIn": "Sissesuumimine",
"@viewerTransitionZoomIn": {},
"wallpaperTargetLock": "Lukustusvaade",
"@wallpaperTargetLock": {},
"wallpaperTargetHomeLock": "Avaleht ja lukustusvaade",
"@wallpaperTargetHomeLock": {},
"widgetDisplayedItemRandom": "Juhuslik",
"@widgetDisplayedItemRandom": {},
"widgetDisplayedItemMostRecent": "Viimane",
"@widgetDisplayedItemMostRecent": {},
"widgetOpenPageHome": "Mine avalehele",
"@widgetOpenPageHome": {},
"widgetOpenPageCollection": "Ava kogumik",
"@widgetOpenPageCollection": {},
"widgetOpenPageViewer": "Ava sirvija",
"@widgetOpenPageViewer": {},
"widgetTapUpdateWidget": "Värskenda vidinat",
"@widgetTapUpdateWidget": {},
"storageVolumeDescriptionFallbackPrimary": "Sisemine andmehoidla",
"@storageVolumeDescriptionFallbackPrimary": {},
"rootDirectoryDescription": "juurkaust",
"@rootDirectoryDescription": {},
"viewerTransitionNone": "Määratlemata",
"@viewerTransitionNone": {},
"wallpaperTargetHome": "Avaleht",
"@wallpaperTargetHome": {},
"storageVolumeDescriptionFallbackNonPrimary": "SD-kaart",
"@storageVolumeDescriptionFallbackNonPrimary": {},
"unitSystemImperial": "Inglise mõõdustik",
"@unitSystemImperial": {},
"viewerTransitionSlide": "Äraliuglemine",
"@viewerTransitionSlide": {},
"viewerTransitionFade": "Hajumine",
"@viewerTransitionFade": {},
"viewerTransitionParallax": "Parallaks",
"@viewerTransitionParallax": {},
"otherDirectoryDescription": "„{name}“ kaust",
"@otherDirectoryDescription": {
"placeholders": {
"name": {
"type": "String",
"example": "Pictures",
"description": "the name of a specific directory"
}
}
},
"notEnoughSpaceDialogMessage": "See tegevus vajab „{volume}“ andmeruumis „{neededSize}“ vaba andmemahtu, kuid alles on vaid „{freeSize}“.",
"@notEnoughSpaceDialogMessage": {
"placeholders": {
"neededSize": {
"type": "String",
"example": "314 MB"
},
"freeSize": {
"type": "String",
"example": "123 MB"
},
"volume": {
"type": "String",
"example": "SD card",
"description": "the name of a storage volume"
}
}
},
"missingSystemFilePickerDialogMessage": "Süsteemi failihaldur/failivalija on puudu või kasutuselt eemaldatud. Palun pane ta tööle ja proovi siis uuesti.",
"@missingSystemFilePickerDialogMessage": {},
"nameConflictDialogSingleSourceMessage": "Mõnedel sihtkausta failidel on sama nimi.",
"@nameConflictDialogSingleSourceMessage": {},
"videoStartOverButtonLabel": "ALUSTA UUESTI",
"@videoStartOverButtonLabel": {},
"videoResumeButtonLabel": "JÄTKA",
"@videoResumeButtonLabel": {},
"setCoverDialogLatest": "Viimane objekt",
"@setCoverDialogLatest": {},
"setCoverDialogAuto": "Automaatne",
"@setCoverDialogAuto": {},
"nameConflictDialogMultipleSourceMessage": "Mõnedel failidel on sama nimi.",
"@nameConflictDialogMultipleSourceMessage": {},
"addShortcutDialogLabel": "Kiirnupu silt",
"@addShortcutDialogLabel": {},
"addShortcutButtonLabel": "LISA",
"@addShortcutButtonLabel": {},
"noMatchingAppDialogMessage": "Pole rakendusi, mis oskaks seda kasutada.",
"@noMatchingAppDialogMessage": {},
"binEntriesConfirmationDialogMessage": "{count, plural, =1{Kas viskame selle objekti prügikasti?} other{Kas viskame need {count} objekti prügikasti?}}",
"@binEntriesConfirmationDialogMessage": {
"placeholders": {
"count": {
"format": "decimalPattern"
}
}
},
"moveUndatedConfirmationDialogMessage": "Kas enne jätkamist salvestame objekti kuupäevad?",
"@moveUndatedConfirmationDialogMessage": {},
"moveUndatedConfirmationDialogSetDate": "Salvesta kuupäevad",
"@moveUndatedConfirmationDialogSetDate": {},
"videoResumeDialogMessage": "Kas sa soovid jätkata esitamist {time} kohalt?",
"@videoResumeDialogMessage": {
"placeholders": {
"time": {
"type": "String",
"example": "13:37"
}
}
},
"patternDialogEnter": "Sisesta viipemuster",
"@patternDialogEnter": {},
"patternDialogConfirm": "Korda viipemustrit",
"@patternDialogConfirm": {},
"pinDialogEnter": "Sisesta PIN-kood",
"@pinDialogEnter": {},
"pinDialogConfirm": "Korda PIN-koodi",
"@pinDialogConfirm": {},
"passwordDialogEnter": "Sisesta salasõna",
"@passwordDialogEnter": {},
"passwordDialogConfirm": "Korda salasõna",
"@passwordDialogConfirm": {},
"renameAlbumDialogLabel": "Uus nimi",
"@renameAlbumDialogLabel": {},
"renameAlbumDialogLabelAlreadyExistsHelper": "Selline kaust on juba olemas",
"@renameAlbumDialogLabelAlreadyExistsHelper": {},
"renameEntrySetPageTitle": "Muuda nime",
"@renameEntrySetPageTitle": {},
"renameEntrySetPagePatternFieldLabel": "Failide nimemuster",
"@renameEntrySetPagePatternFieldLabel": {},
"renameEntrySetPageInsertTooltip": "Lisa väli",
"@renameEntrySetPageInsertTooltip": {},
"renameEntrySetPagePreviewSectionTitle": "Eelvaade",
"@renameEntrySetPagePreviewSectionTitle": {},
"renameProcessorCounter": "Loendur",
"@renameProcessorCounter": {},
"renameProcessorHash": "Räsi",
"@renameProcessorHash": {},
"renameProcessorName": "Nimi",
"@renameProcessorName": {},
"storageAccessDialogMessage": "Palun anna sellele rakendusele järgmises ekraanivaates õigused „{directory}“ kaustale „{volume}“ andmekogus.",
"@storageAccessDialogMessage": {
"placeholders": {
"directory": {
"type": "String",
"description": "the name of a directory, using the output of `rootDirectoryDescription` or `otherDirectoryDescription`"
},
"volume": {
"type": "String",
"example": "SD card",
"description": "the name of a storage volume"
}
}
},
"restrictedAccessDialogMessage": "Sellel rakendusel pole õigusi muuta faile „{volume}“ andmekogu „{directory}“ kaustas.\n\nPalun kasuta failihaldurit või galeriirakendust failide tõstmiseks muude asukohta.",
"@restrictedAccessDialogMessage": {
"placeholders": {
"directory": {
"type": "String",
"description": "the name of a directory, using the output of `rootDirectoryDescription` or `otherDirectoryDescription`"
},
"volume": {
"type": "String",
"example": "SD card",
"description": "the name of a storage volume"
}
}
},
"setCoverDialogCustom": "Sinu valik",
"@setCoverDialogCustom": {},
"deleteEntriesConfirmationDialogMessage": "{count, plural, =1{Kas kustutame selle objekti?} other{Kas kustutame need {count} objekti?}}",
"@deleteEntriesConfirmationDialogMessage": {
"placeholders": {
"count": {
"format": "decimalPattern"
}
}
}
}
Loading

0 comments on commit 1d7deac

Please sign in to comment.