From 328d232fe77406fa93a14768fc66e7b998506fba Mon Sep 17 00:00:00 2001 From: Nuckyz <61953774+Nuckyz@users.noreply.github.com> Date: Sun, 8 Jun 2025 04:13:53 -0300 Subject: [PATCH] feat(Google Photos): Add `Enable DCIM folders backup control` patch (#5138) --- patches/api/patches.api | 4 ++++ .../EnableDCIMFoldersBackupControlPatch.kt | 18 ++++++++++++++++++ .../googlephotos/misc/backup/Fingerprints.kt | 8 ++++++++ 3 files changed, 30 insertions(+) create mode 100644 patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatch.kt create mode 100644 patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/Fingerprints.kt diff --git a/patches/api/patches.api b/patches/api/patches.api index 978961283..7feb20361 100644 --- a/patches/api/patches.api +++ b/patches/api/patches.api @@ -192,6 +192,10 @@ public final class app/revanced/patches/googlenews/misc/gms/GmsCoreSupportPatchK public static final fun getGmsCoreSupportPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } +public final class app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatchKt { + public static final fun getEnableDCIMFoldersBackupControlPatch ()Lapp/revanced/patcher/patch/BytecodePatch; +} + public final class app/revanced/patches/googlephotos/misc/extension/ExtensionPatchKt { public static final fun getExtensionPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } diff --git a/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatch.kt b/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatch.kt new file mode 100644 index 000000000..35c541159 --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatch.kt @@ -0,0 +1,18 @@ +package app.revanced.patches.googlephotos.misc.backup + +import app.revanced.patcher.patch.bytecodePatch +import app.revanced.util.returnEarly + +@Suppress("unused") +val enableDCIMFoldersBackupControlPatch = bytecodePatch( + name = "Enable DCIM folders backup control", + description = "Disables always on backup for the Camera and other DCIM folders, allowing you to control backup " + + "for each folder individually. This will make the app default to having no folders backed up.", + use = false, +) { + compatibleWith("com.google.android.apps.photos") + + execute { + isDCIMFolderBackupControlDisabled.method.returnEarly(false) + } +} diff --git a/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/Fingerprints.kt new file mode 100644 index 000000000..71dda1f3a --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/googlephotos/misc/backup/Fingerprints.kt @@ -0,0 +1,8 @@ +package app.revanced.patches.googlephotos.misc.backup + +import app.revanced.patcher.fingerprint + +internal val isDCIMFolderBackupControlDisabled = fingerprint { + returns("Z") + strings("/dcim", "/mars_files/") +}