From 17c3aa83a68dcdb99065d51fb36d12ed92c4f536 Mon Sep 17 00:00:00 2001 From: CrazyMarvin Date: Sat, 29 Feb 2020 14:20:19 +0100 Subject: [PATCH 01/10] Add Gradle Wrapper Validation GitHub Action https://gradl.es/2UOQcx3 --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9034726..ff9b239 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,6 +32,8 @@ jobs: api: 25 tag: google_apis abi: x86 + - name: "πŸ§ͺ Gradle Wrapper Validation" + uses: gradle/wrapper-validation-action@v1 - name: "πŸ“€ Upload code coverage" uses: codecov/codecov-action@v1 with: From 11fac989d4378b2c0f257eeb5be6137b9f793c02 Mon Sep 17 00:00:00 2001 From: CrazyMarvin Date: Sat, 29 Feb 2020 23:11:50 +0100 Subject: [PATCH 02/10] Move Gradle Wrapper Validation Up The GitHub Action now fails directly when the Gradle Wrapper is invalid. Steps like installing the JDK, doing lints, etc. now do not apply. --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ff9b239..b9da394 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,6 +6,8 @@ jobs: steps: - name: "πŸ“₯ Check-out" uses: actions/checkout@v1 + - name: "πŸ§ͺ Gradle Wrapper Validation" + uses: gradle/wrapper-validation-action@v1 - name: "🧰 Install JDK" uses: actions/setup-java@v1 with: @@ -32,8 +34,6 @@ jobs: api: 25 tag: google_apis abi: x86 - - name: "πŸ§ͺ Gradle Wrapper Validation" - uses: gradle/wrapper-validation-action@v1 - name: "πŸ“€ Upload code coverage" uses: codecov/codecov-action@v1 with: From d04fa02dbc0c2114ea0525b6793f1a1760154d53 Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 13:42:57 +0200 Subject: [PATCH 03/10] Fix file path --- .github/workflows/deploy.yml | 2 +- README.md | 182 +++++++++++++++++------------------ 2 files changed, 92 insertions(+), 92 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index c633d1f..c3ec90a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -20,7 +20,7 @@ jobs: acceptLicense: yes - name: "πŸ•Ά Decrypt secret files" run: | - cd secrets + cd secret gpg --quiet --batch --yes --decrypt --passphrase="${{ secrets.FILES_PASSPHRASE }}" --output secrets.tar secrets.tar.gpg tar -xf secrets.tar - name: "πŸ“ Copy local CI properties" diff --git a/README.md b/README.md index a4cb107..0a4b64e 100644 --- a/README.md +++ b/README.md @@ -1,91 +1,91 @@ -[![Icon](art/icons/ic_launcher/legacy/ic_launcher_squircle_xxxhdpi.png)](art/icons/ic_launcher/ic_launcher_play_store.png) - -# Metadata Remover App For Android -[![Build Status](https://img.shields.io/github/workflow/status/Crazy-Marvin/MetadataRemover/CI?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/actions) -[![License](https://img.shields.io/github/license/Crazy-Marvin/MetadataRemover.svg?style=flat)](LICENSE.txt) -[![Last commit](https://img.shields.io/github/last-commit/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/commits) -[![Releases](https://img.shields.io/github/downloads/Crazy-Marvin/MetadataRemover/total.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/releases) -[![Latest tag](https://img.shields.io/github/tag/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/tags) -[![Issues](https://img.shields.io/github/issues/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/issues) -[![Pull requests](https://img.shields.io/github/issues-pr/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/pulls) -[![Codacy grade](https://img.shields.io/codacy/grade/eed69c67a07f4a14bf0ee0fd6b2ead40/master.svg?style=flat)](https://www.codacy.com/app/CrazyMarvin/MetadataRemover) -[![Codecov](https://img.shields.io/codecov/c/github/Crazy-Marvin/MetadataRemover/master.svg?style=flat)](https://codecov.io/gh/Crazy-Marvin/MetadataRemover) -[![Crowdin Localization](https://d322cqt584bo4o.cloudfront.net/metadata-remover/localized.svg?style=flat)](https://crowdin.com/project/metadata-remover) -[![F-Droid](https://img.shields.io/f-droid/v/xxxxxxxx.svg?style=flat)](https://f-droid.org/de/packages/xxxxxxxx/) -[![Google Play](https://badgen.net/badge/icon/googleplay?icon=googleplay&label)](https://play.google.com/store/apps/details?id=rocks.poopjournal.metadataremover) - -_Remove any image's metadata fast and easily._ - - - Get it on Google Play - - - Get it on F-Droid - - - -Protect your privacy by removing metadata from your photos, before sharing them on the internet! - -

Features:

- -β€‰βœ”οΈ View metadata - -β€‰βœ”οΈ Image preview - -β€‰βœ”οΈ Remove metadata - -β€‰βœ”οΈ Simple and intuitive interface - -β€‰βœ”οΈ Share directly from the app - - -

Learn more:

- -Whenever you take a picture, additional metadata is saved in the image file. -Most smartphones do not inform you about this. - -Metadata can look like this: - -β€‰πŸ•‘ On which day was the picture taken, and at which time? - -β€‰πŸ—ΊοΈ And where exactly? - -β€‰πŸ“· Which camera or which smartphone was used? - -β€‰πŸ”§ And which camera settings were used? - -β€‰πŸ“ Notes of the photographer or the camera? - -β€‰πŸ“Œ More and more often, even exact GPS coordinates are saved in your photo. - - -Metadata is sometimes very usefulβ€”for instance when sorting holiday photos. -But as soon as you share photos with others via social media, all this information is visible publicly. -Data collectors and stalkers would possibly be able to discover your place of residence or workplace from the metadata or draw conclusions about your daily routine. -Tracking services could create more comprehensive advertising profiles and sell your data to other organizations. - -With our app, you can easily view all that data, remove it entirely, and then share the anonymized photo directly! -That way you stay anonymous and safe in internet, while your friends can still admire your cute cat. - -Happy sharing! 😽 - -## Deployment - -### Encoding secrets - -```shell script -cd secrets -tar -cf secrets.tar --exclude=secrets.tar --exclude=secrets.tar.gpg --exclude=.gitignore . -gpg --symmetric --cipher-algo AES256 --output secrets.tar.gpg secrets.tar -``` - -The same password needs to be saved as `FILES_PASSPHRASE` variable -to this repository's [secrets](https://github.com/Crazy-Marvin/MetadataRemover/settings/secrets). - -## Contributing - -Check out the [contribution guidelines](CONTRIBUTING.md) on how to help improve this project. +[![Icon](art/icons/ic_launcher/legacy/ic_launcher_squircle_xxxhdpi.png)](art/icons/ic_launcher/ic_launcher_play_store.png) + +# Metadata Remover App For Android +[![Build Status](https://img.shields.io/github/workflow/status/Crazy-Marvin/MetadataRemover/CI?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/actions) +[![License](https://img.shields.io/github/license/Crazy-Marvin/MetadataRemover.svg?style=flat)](LICENSE.txt) +[![Last commit](https://img.shields.io/github/last-commit/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/commits) +[![Releases](https://img.shields.io/github/downloads/Crazy-Marvin/MetadataRemover/total.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/releases) +[![Latest tag](https://img.shields.io/github/tag/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/tags) +[![Issues](https://img.shields.io/github/issues/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/issues) +[![Pull requests](https://img.shields.io/github/issues-pr/Crazy-Marvin/MetadataRemover.svg?style=flat)](https://github.com/Crazy-Marvin/MetadataRemover/pulls) +[![Codacy grade](https://img.shields.io/codacy/grade/eed69c67a07f4a14bf0ee0fd6b2ead40/master.svg?style=flat)](https://www.codacy.com/app/CrazyMarvin/MetadataRemover) +[![Codecov](https://img.shields.io/codecov/c/github/Crazy-Marvin/MetadataRemover/master.svg?style=flat)](https://codecov.io/gh/Crazy-Marvin/MetadataRemover) +[![Crowdin Localization](https://d322cqt584bo4o.cloudfront.net/metadata-remover/localized.svg?style=flat)](https://crowdin.com/project/metadata-remover) +[![F-Droid](https://img.shields.io/f-droid/v/xxxxxxxx.svg?style=flat)](https://f-droid.org/de/packages/xxxxxxxx/) +[![Google Play](https://badgen.net/badge/icon/googleplay?icon=googleplay&label)](https://play.google.com/store/apps/details?id=rocks.poopjournal.metadataremover) + +_Remove any image's metadata fast and easily._ + + + Get it on Google Play + + + Get it on F-Droid + + + +Protect your privacy by removing metadata from your photos, before sharing them on the internet! + +

Features:

+ +β€‰βœ”οΈ View metadata + +β€‰βœ”οΈ Image preview + +β€‰βœ”οΈ Remove metadata + +β€‰βœ”οΈ Simple and intuitive interface + +β€‰βœ”οΈ Share directly from the app + + +

Learn more:

+ +Whenever you take a picture, additional metadata is saved in the image file. +Most smartphones do not inform you about this. + +Metadata can look like this: + +β€‰πŸ•‘ On which day was the picture taken, and at which time? + +β€‰πŸ—ΊοΈ And where exactly? + +β€‰πŸ“· Which camera or which smartphone was used? + +β€‰πŸ”§ And which camera settings were used? + +β€‰πŸ“ Notes of the photographer or the camera? + +β€‰πŸ“Œ More and more often, even exact GPS coordinates are saved in your photo. + + +Metadata is sometimes very usefulβ€”for instance when sorting holiday photos. +But as soon as you share photos with others via social media, all this information is visible publicly. +Data collectors and stalkers would possibly be able to discover your place of residence or workplace from the metadata or draw conclusions about your daily routine. +Tracking services could create more comprehensive advertising profiles and sell your data to other organizations. + +With our app, you can easily view all that data, remove it entirely, and then share the anonymized photo directly! +That way you stay anonymous and safe in internet, while your friends can still admire your cute cat. + +Happy sharing! 😽 + +## Deployment + +### Encoding secrets + +```shell script +cd secret +tar -cf secrets.tar --exclude=secrets.tar --exclude=secrets.tar.gpg --exclude=.gitignore . +gpg --symmetric --cipher-algo AES256 --output secrets.tar.gpg secrets.tar +``` + +The same password needs to be saved as `FILES_PASSPHRASE` variable +to this repository's [secret](https://github.com/Crazy-Marvin/MetadataRemover/settings/secret). + +## Contributing + +Check out the [contribution guidelines](CONTRIBUTING.md) on how to help improve this project. From c582348e36177a38343270af8d03500cbacb3d8b Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 13:43:22 +0200 Subject: [PATCH 04/10] Fix CI runner --- .github/workflows/ci.yml | 2 +- .github/workflows/deploy.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b9da394..cb1add2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,7 +2,7 @@ name: CI on: push jobs: build: - runs-on: macOS-10.14 + runs-on: macos-10.15 steps: - name: "πŸ“₯ Check-out" uses: actions/checkout@v1 diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index c3ec90a..b29201e 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -5,7 +5,7 @@ on: - master jobs: deploy: - runs-on: macOS-10.14 + runs-on: macos-10.15 steps: - name: "πŸ“₯ Check-out" uses: actions/checkout@v1 From 7ae4490ecc5feef89157812e977594b1cb30af51 Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 13:43:31 +0200 Subject: [PATCH 05/10] Update readme --- README.md | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 0a4b64e..e59d160 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ [![Codacy grade](https://img.shields.io/codacy/grade/eed69c67a07f4a14bf0ee0fd6b2ead40/master.svg?style=flat)](https://www.codacy.com/app/CrazyMarvin/MetadataRemover) [![Codecov](https://img.shields.io/codecov/c/github/Crazy-Marvin/MetadataRemover/master.svg?style=flat)](https://codecov.io/gh/Crazy-Marvin/MetadataRemover) [![Crowdin Localization](https://d322cqt584bo4o.cloudfront.net/metadata-remover/localized.svg?style=flat)](https://crowdin.com/project/metadata-remover) -[![F-Droid](https://img.shields.io/f-droid/v/xxxxxxxx.svg?style=flat)](https://f-droid.org/de/packages/xxxxxxxx/) +[![F-Droid](https://img.shields.io/f-droid/v/rocks.poopjournal.metadataremover.svg?style=flat)](https://f-droid.org/de/packages/rocks.poopjournal.metadataremover/) [![Google Play](https://badgen.net/badge/icon/googleplay?icon=googleplay&label)](https://play.google.com/store/apps/details?id=rocks.poopjournal.metadataremover) _Remove any image's metadata fast and easily._ @@ -28,9 +28,9 @@ _Remove any image's metadata fast and easily._ -Protect your privacy by removing metadata from your photos, before sharing them on the internet! +_Protect your privacy by removing metadata from your photos, before sharing them on the internet!_ -

Features:

+## Features β€‰βœ”οΈ View metadata @@ -42,13 +42,12 @@ _Remove any image's metadata fast and easily._ β€‰βœ”οΈ Share directly from the app - -

Learn more:

+## Learn more Whenever you take a picture, additional metadata is saved in the image file. -Most smartphones do not inform you about this. +Most smartphones do _not inform_ you about this. -Metadata can look like this: +**Metadata can look like this:** β€‰πŸ•‘ On which day was the picture taken, and at which time? @@ -64,14 +63,14 @@ Most smartphones do not inform you about this. Metadata is sometimes very usefulβ€”for instance when sorting holiday photos. -But as soon as you share photos with others via social media, all this information is visible publicly. -Data collectors and stalkers would possibly be able to discover your place of residence or workplace from the metadata or draw conclusions about your daily routine. +But as soon as you share photos with others via social media, all this information is visible _publicly_. +Data collectors and stalkers would possibly be able to discover your _place of residence or workplace_ from the metadata or draw conclusions about your _daily routine_. Tracking services could create more comprehensive advertising profiles and sell your data to other organizations. -With our app, you can easily view all that data, remove it entirely, and then share the anonymized photo directly! -That way you stay anonymous and safe in internet, while your friends can still admire your cute cat. +With our app, you can easily view all that data, _remove it entirely_, and then share the anonymized photo directly! +That way you stay _anonymous_ and _safe_ in internet, while your friends can still admire your cute cat. -Happy sharing! 😽 +_Happy sharing! 😽_ ## Deployment From 34fb082a9eaf64bb6d44b652614ff04982af394d Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 13:47:19 +0200 Subject: [PATCH 06/10] Fix CI --- .github/workflows/ci.yml | 2 +- .github/workflows/deploy.yml | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cb1add2..00a693a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: java-version: 1.8 java-package: jdk - name: "🧰 Install Android SDK" - uses: malinskiy/action-android/install-sdk@release/0.0.5 + uses: android-actions/setup-android@v2 with: acceptLicense: yes - name: "πŸ“ Copy local CI properties" diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index b29201e..5169bd1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -15,9 +15,7 @@ jobs: java-version: 1.8 java-package: jdk - name: "🧰 Install Android SDK" - uses: malinskiy/action-android/install-sdk@release/0.0.5 - with: - acceptLicense: yes + uses: android-actions/setup-android@v2 - name: "πŸ•Ά Decrypt secret files" run: | cd secret From eeab4c2bb593575cb4ba8461b461dce7710a3451 Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 13:53:16 +0200 Subject: [PATCH 07/10] Fix CI --- .github/workflows/ci.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 00a693a..633461c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,12 +28,10 @@ jobs: - name: "πŸ§ͺ Unit test" run: ./gradlew test - name: "πŸ§ͺ Integration test" - uses: malinskiy/action-android/emulator-run-cmd@release/0.0.5 + uses: reactivecircus/android-emulator-runner@v2 with: - cmd: ./gradlew connectedAndroidTest - api: 25 - tag: google_apis - abi: x86 + api-level: 25 + script: ./gradlew connectedAndroidTest - name: "πŸ“€ Upload code coverage" uses: codecov/codecov-action@v1 with: From fe636b79ee83b930dc39fb7f144aefbb2b186ba6 Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 14:03:45 +0200 Subject: [PATCH 08/10] Fix Kotlin issues --- .../metadata/handlers/DrewMetadataReader.kt | 74 ++++++++++--------- .../metadataremover/ui/MainActivity.kt | 12 +-- .../kotlin/DependencyHandlerExtensions.kt | 2 +- 3 files changed, 46 insertions(+), 42 deletions(-) diff --git a/app/src/main/java/rocks/poopjournal/metadataremover/metadata/handlers/DrewMetadataReader.kt b/app/src/main/java/rocks/poopjournal/metadataremover/metadata/handlers/DrewMetadataReader.kt index ff25ef5..7424d9c 100644 --- a/app/src/main/java/rocks/poopjournal/metadataremover/metadata/handlers/DrewMetadataReader.kt +++ b/app/src/main/java/rocks/poopjournal/metadataremover/metadata/handlers/DrewMetadataReader.kt @@ -81,149 +81,151 @@ object DrewMetadataReader : MetadataReader { val adobeJpegDirectory = metadata.getFirstDirectoryOfType() adobeJpegDirectory?.let { directory -> - + TODO("Read directory $directory") } val aviDirectory = metadata.getFirstDirectoryOfType() aviDirectory?.let { directory -> - + TODO("Read directory $directory") } val bmpHeaderDirectory = metadata.getFirstDirectoryOfType() bmpHeaderDirectory?.let { directory -> - + TODO("Read directory $directory") } val epsDirectory = metadata.getFirstDirectoryOfType() epsDirectory?.let { directory -> - + TODO("Read directory $directory") } val exifIFD0Directory = metadata.getFirstDirectoryOfType() exifIFD0Directory?.let { directory -> - + TODO("Read directory $directory") } val exifImageDirectory = metadata.getFirstDirectoryOfType() exifImageDirectory?.let { directory -> - + TODO("Read directory $directory") } val exifInteropDirectory = metadata.getFirstDirectoryOfType() exifInteropDirectory?.let { directory -> - + TODO("Read directory $directory") } val exifSubIFDDirectory = metadata.getFirstDirectoryOfType() exifSubIFDDirectory?.let { directory -> - + TODO("Read directory $directory") } val exifThumbnailDirectory = metadata.getFirstDirectoryOfType() exifThumbnailDirectory?.let { directory -> - + TODO("Read directory $directory") } val gpsDirectory = metadata.getFirstDirectoryOfType() gpsDirectory?.let { directory -> - + TODO("Read directory $directory") } val panasonicRawDistortionDirectory = metadata.getFirstDirectoryOfType() panasonicRawDistortionDirectory?.let { directory -> - + TODO("Read directory $directory") } val panasonicRawIFD0Directory = metadata.getFirstDirectoryOfType() panasonicRawIFD0Directory?.let { directory -> - + TODO("Read directory $directory") } val panasonicRawWbInfo2Directory = metadata.getFirstDirectoryOfType() panasonicRawWbInfo2Directory?.let { directory -> - + TODO("Read directory $directory") } val panasonicRawWbInfoDirectory = metadata.getFirstDirectoryOfType() panasonicRawWbInfoDirectory?.let { directory -> - + TODO("Read directory $directory") } val printIMDirectory = metadata.getFirstDirectoryOfType() printIMDirectory?.let { directory -> - + TODO("Read directory $directory") } val fileSystemDirectory = metadata.getFirstDirectoryOfType() fileSystemDirectory?.let { directory -> - + TODO("Read directory $directory") } val fileTypeDirectory = metadata.getFirstDirectoryOfType() fileTypeDirectory?.let { directory -> - + TODO("Read directory $directory") } val gifAnimationDirectory = metadata.getFirstDirectoryOfType() gifAnimationDirectory?.let { directory -> - + TODO("Read directory $directory") } val gifCommentDirectory = metadata.getFirstDirectoryOfType() gifCommentDirectory?.let { directory -> - + TODO("Read directory $directory") } val gifControlDirectory = metadata.getFirstDirectoryOfType() gifControlDirectory?.let { directory -> - + TODO("Read directory $directory") } val gifHeaderDirectory = metadata.getFirstDirectoryOfType() gifHeaderDirectory?.let { directory -> - + TODO("Read directory $directory") } val gifImageDirectory = metadata.getFirstDirectoryOfType() gifImageDirectory?.let { directory -> - + TODO("Read directory $directory") } val iccDirectory = metadata.getFirstDirectoryOfType() iccDirectory?.let { directory -> - + TODO("Read directory $directory") } val icoDirectory = metadata.getFirstDirectoryOfType() icoDirectory?.let { directory -> - + TODO("Read directory $directory") } val iptcDirectory = metadata.getFirstDirectoryOfType() iptcDirectory?.let { directory -> - + TODO("Read directory $directory") } val jfifDirectory = metadata.getFirstDirectoryOfType() jfifDirectory?.let { directory -> - + TODO("Read directory $directory") } val jfxxDirectory = metadata.getFirstDirectoryOfType() jfxxDirectory?.let { directory -> - + TODO("Read directory $directory") } val huffmanTablesDirectory = metadata.getFirstDirectoryOfType() huffmanTablesDirectory?.let { directory -> - + TODO("Read directory $directory") } val jpegCommentDirectory = metadata.getFirstDirectoryOfType() jpegCommentDirectory?.let { directory -> - + TODO("Read directory $directory") } val jpegDirectory = metadata.getFirstDirectoryOfType() jpegDirectory?.let { directory -> - + TODO("Read directory $directory") } val quickTimeDirectory = metadata.getFirstDirectoryOfType() quickTimeDirectory?.let { directory -> - + TODO("Read directory $directory") } val mp4Directory = metadata.getFirstDirectoryOfType() mp4Directory?.let { directory -> - + TODO("Read directory $directory") } val pcxDirectory = metadata.getFirstDirectoryOfType() pcxDirectory?.let { directory -> - + TODO("Read directory $directory") } val photoshopDirectory = metadata.getFirstDirectoryOfType() photoshopDirectory?.let { directory -> - + TODO("Read directory $directory") } val psdHeaderDirectory = metadata.getFirstDirectoryOfType() psdHeaderDirectory?.let { directory -> - + TODO("Read directory $directory") } val pngDirectory = metadata.getFirstDirectoryOfType() pngDirectory?.let { directory -> + TODO("Read directory $directory") } val wavDirectory = metadata.getFirstDirectoryOfType() wavDirectory?.let { directory -> + TODO("Read directory $directory") } val webpDirectory = metadata.getFirstDirectoryOfType() webpDirectory?.let { directory -> @@ -231,11 +233,13 @@ object DrewMetadataReader : MetadataReader { directory.getInt(WebpDirectory.TAG_IMAGE_HEIGHT) directory.getInt(WebpDirectory.TAG_IMAGE_WIDTH) directory.getBoolean(WebpDirectory.TAG_IS_ANIMATION) + TODO("Read directory $directory") } val xmpDirectory = metadata.getFirstDirectoryOfType() xmpDirectory?.let { directory -> directory.xmpMeta directory.xmpProperties + TODO("Read directory $directory") } return null diff --git a/app/src/main/java/rocks/poopjournal/metadataremover/ui/MainActivity.kt b/app/src/main/java/rocks/poopjournal/metadataremover/ui/MainActivity.kt index 1e35572..4e7cf15 100644 --- a/app/src/main/java/rocks/poopjournal/metadataremover/ui/MainActivity.kt +++ b/app/src/main/java/rocks/poopjournal/metadataremover/ui/MainActivity.kt @@ -85,7 +85,7 @@ class MainActivity : AppCompatActivity(), ActivityResultLauncher, AndroidViewDsl initializeViews() panelSlideListener.onPanelSlide(binding.slidingLayout, slidingOffset) - onPreviewUpdate(Resource.Empty()) + onPreviewUpdate(Empty()) viewModel.wrongMimeTypeFileSelectedHint.observeNotNull(this) { event -> Snackbar.make( @@ -223,7 +223,7 @@ class MainActivity : AppCompatActivity(), ActivityResultLauncher, AndroidViewDsl val expandIcon = actionView check(expandIcon is ExpandIconView) - (expandIcon as ExpandIconView) { + (expandIcon) { setState(ExpandIconView.LESS, false) } } @@ -269,7 +269,7 @@ class MainActivity : AppCompatActivity(), ActivityResultLauncher, AndroidViewDsl val expandIcon = actionView check(expandIcon is ExpandIconView) - (expandIcon as ExpandIconView) { + (expandIcon) { setState(ExpandIconView.LESS, false) } } @@ -385,8 +385,8 @@ class MainActivity : AppCompatActivity(), ActivityResultLauncher, AndroidViewDsl override fun onPanelStateChanged( panel: View, - previousState: SlidingUpPanelLayout.PanelState, - newState: SlidingUpPanelLayout.PanelState + previousState: PanelState, + newState: PanelState ) { val expandCollapse = binding.bottomSheet .toolbar @@ -395,7 +395,7 @@ class MainActivity : AppCompatActivity(), ActivityResultLauncher, AndroidViewDsl .actionView check(expandCollapse is ExpandIconView) - (expandCollapse as ExpandIconView) { + (expandCollapse) { when (newState) { PanelState.COLLAPSED -> ExpandIconView.LESS to R.string.title_menu_item_collapse PanelState.EXPANDED, PanelState.ANCHORED -> ExpandIconView.MORE to R.string.title_menu_item_expand diff --git a/buildSrc/src/main/kotlin/DependencyHandlerExtensions.kt b/buildSrc/src/main/kotlin/DependencyHandlerExtensions.kt index 03e1061..120e343 100644 --- a/buildSrc/src/main/kotlin/DependencyHandlerExtensions.kt +++ b/buildSrc/src/main/kotlin/DependencyHandlerExtensions.kt @@ -194,5 +194,5 @@ fun DependencyHandlerScope.annotationProcessor( fun DependencyHandler.kotlin(module: String, version: String? = null): String { val dependencyNotation: Any = kotlin(module, version) check(dependencyNotation is String) - return dependencyNotation as String + return dependencyNotation } \ No newline at end of file From c93087e0824da89ae5329b696ebd530323d92730 Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 14:05:56 +0200 Subject: [PATCH 09/10] Bump version --- buildSrc/src/main/kotlin/Versions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 8c2c4f1..6d2e047 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -30,7 +30,7 @@ object Versions { // Note: The app version should always be determined based on semantic versioning rules http://semver.org/ val app = Version( major = 1, - patch = 2 + patch = 3 ) val sdk = Sdk From 1bcb2e77ef0c5e49e64bacb01dcd016b8f3c523f Mon Sep 17 00:00:00 2001 From: Jan Heinrich Reimer Date: Tue, 10 May 2022 14:19:15 +0200 Subject: [PATCH 10/10] Fix CI --- .github/workflows/ci.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 633461c..61b0c43 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,8 +15,6 @@ jobs: java-package: jdk - name: "🧰 Install Android SDK" uses: android-actions/setup-android@v2 - with: - acceptLicense: yes - name: "πŸ“ Copy local CI properties" run: cp ci/local.properties ./ - name: "πŸ— Build" @@ -33,7 +31,6 @@ jobs: api-level: 25 script: ./gradlew connectedAndroidTest - name: "πŸ“€ Upload code coverage" - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@v2 with: token: ${{ secrets.CODECOV_TOKEN }} - yml: .codecov.yml