3 Commits
bka ... udc

Author SHA1 Message Date
Joey Huab
97f22a1890 Revert "Enable elf checks"
This reverts commit d25ff7a1b5a691b167393070c23df0bc4f745fbf.
2024-10-22 22:47:36 +09:00
chaitanya
45ac24f402 Override third party camera apps 2024-10-22 16:26:44 +05:30
chaitanya
b02a6df9c8 Adapt For marble 2024-10-22 16:26:19 +05:30
25 changed files with 387 additions and 886 deletions

View File

@@ -7,10 +7,6 @@
# Inherit from the proprietary version
$(call inherit-product, vendor/xiaomi/miuicamera-marble/miuicamera-marble-vendor.mk)
# Overlays
PRODUCT_PACKAGES += \
MiuiCameraOverlay
# Public libraries
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/public.libraries-xiaomi.txt:$(TARGET_COPY_OUT_SYSTEM)/etc/public.libraries-xiaomi.txt

View File

@@ -1,56 +0,0 @@
#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
#
# SPDX-FileCopyrightText: 2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
from extract_utils.fixups_blob import (
blob_fixup,
blob_fixups_user_type,
)
from extract_utils.fixups_lib import (
lib_fixups,
lib_fixups_user_type,
)
from extract_utils.main import (
ExtractUtils,
ExtractUtilsModule,
)
namespace_imports = [
'device/xiaomi/miuicamera-marble',
]
def lib_fixup_system_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'system' else None
lib_fixups: lib_fixups_user_type = {
**lib_fixups,
'vendor.xiaomi.hardware.campostproc@1.0': lib_fixup_system_suffix,
}
blob_fixups: blob_fixups_user_type = {
'system/lib64/libcamera_algoup_jni.xiaomi.so': blob_fixup()
.add_needed('libgui_shim_miuicamera.so')
.sig_replace('08 AD 40 F9', '08 A9 40 F9'),
'system/lib64/libcamera_mianode_jni.xiaomi.so': blob_fixup()
.add_needed('libgui_shim_miuicamera.so'),
'system/lib64/libmicampostproc_client.so': blob_fixup()
.remove_needed('libhidltransport.so'),
'system/priv-app/MiuiCamera/MiuiCamera.apk': blob_fixup()
.apktool_patch('patches'),
} # fmt: skip
module = ExtractUtilsModule(
'miuicamera-marble',
'xiaomi',
blob_fixups=blob_fixups,
lib_fixups=lib_fixups,
namespace_imports=namespace_imports,
)
if __name__ == '__main__':
utils = ExtractUtils.device(module)
utils.run()

75
extract-files.sh Executable file
View File

@@ -0,0 +1,75 @@
#!/bin/bash
#
# Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2020 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
set -e
DEVICE=miuicamera-marble
VENDOR=xiaomi
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
ANDROID_ROOT="${MY_DIR}/../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi
source "${HELPER}"
# Default to sanitizing the vendor folder before extraction
CLEAN_VENDOR=true
KANG=
SECTION=
while [ "${#}" -gt 0 ]; do
case "${1}" in
-n | --no-cleanup )
CLEAN_VENDOR=false
;;
-k | --kang )
KANG="--kang"
;;
-s | --section )
SECTION="${2}"; shift
CLEAN_VENDOR=false
;;
* )
SRC="${1}"
;;
esac
shift
done
if [ -z "${SRC}" ]; then
SRC="adb"
fi
function blob_fixup() {
case "${1}" in
system/lib64/libcamera_algoup_jni.xiaomi.so|system/lib64/libcamera_mianode_jni.xiaomi.so)
"${PATCHELF}" --add-needed "libgui_shim_miuicamera.so" "${2}"
;;
system/lib64/libmicampostproc_client.so)
"${PATCHELF}" --remove-needed "libhidltransport.so" "${2}"
;;
system/priv-app/MiuiCamera/MiuiCamera.apk)
apktool_patch "${2}" "$MY_DIR/patches"
;;
esac
}
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
"${MY_DIR}/setup-makefiles.sh"

View File

@@ -1,10 +0,0 @@
//
// Copyright (C) 2023 Paranoid Android
//
// SPDX-License-Identifier: Apache-2.0
//
runtime_resource_overlay {
name: "MiuiCameraOverlay",
product_specific: true,
}

View File

@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.camera.memeoverlay">
<overlay
android:isStatic="true"
android:priority="800"
android:targetPackage="com.android.camera" />
</manifest>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon
xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_camera_cv_background" />
<foreground android:drawable="@drawable/ic_launcher_camera_cv_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_camera_cv_monochrome" />
</adaptive-icon>

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon
xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_camera_cv_background" />
<foreground android:drawable="@drawable/ic_launcher_camera_cv_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_camera_cv_monochrome" />
</adaptive-icon>

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon
xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_camera_cv_background" />
<foreground android:drawable="@drawable/ic_launcher_camera_cv_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_camera_cv_monochrome" />
</adaptive-icon>

View File

@@ -1,72 +1,80 @@
From ba26b505cb1a09140f575726d8500d7732b1e736 Mon Sep 17 00:00:00 2001
From 9eda50fdc94da67e223c0406040155567a411daf Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Mon, 13 Mar 2023 15:46:13 +0100
Subject: [PATCH 01/10] ICustomCaptureResult: Add readout timestamp
Subject: [PATCH 1/8] ICustomCaptureResult: Add readout timestamp
commit [1] added two arguments to the CaptureResultExtras constructor.
Patch MiuiCamera to provide these arguments
https://github.com/LineageOS/android_frameworks_base/commit/91e7522cb28d2b1e2e12adc8726db8190d711f2e
---
.../protocol/ICustomCaptureResult.smali | 24 +++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
.../protocol/ICustomCaptureResult.smali | 32 +++++++++++++++++--
1 file changed, 30 insertions(+), 2 deletions(-)
diff --git a/smali_classes4/com/xiaomi/protocol/ICustomCaptureResult.smali b/smali_classes4/com/xiaomi/protocol/ICustomCaptureResult.smali
index ee18158d8..fb279525d 100644
index 6406b1edd..14a9c706d 100644
--- a/smali_classes4/com/xiaomi/protocol/ICustomCaptureResult.smali
+++ b/smali_classes4/com/xiaomi/protocol/ICustomCaptureResult.smali
@@ -388,7 +388,7 @@
@@ -412,7 +412,7 @@
.end method
.method public static toTotalCaptureResult(Lcom/xiaomi/protocol/ICustomCaptureResult;IZ)Landroid/hardware/camera2/TotalCaptureResult;
- .locals 22
+ .locals 24
- .locals 23
+ .locals 27
.annotation system Ldalvik/annotation/MethodParameters;
accessFlags = {
0x0,
@@ -486,7 +486,7 @@
@@ -509,7 +509,7 @@
if-lt v0, v6, :cond_0
if-lt v1, v8, :cond_0
- const/16 v0, 0xb
+ const/16 v0, 0xd
- const/16 v1, 0xb
+ const/16 v1, 0xd
:try_start_1
new-array v6, v0, [Ljava/lang/Class;
@@ -522,6 +522,16 @@
new-array v8, v1, [Ljava/lang/Class;
@@ -547,6 +547,18 @@
aput-object v19, v6, v20
aput-object v20, v8, v21
+ # hasReadoutTimestamp
+ const/16 v22, 0xb # index in array v6
+ sget-object v19, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
+ aput-object v19, v6, v22
+ sget-object v20, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
+
+ # readoutTimestamp
+ const/16 v23, 0xc # index in array v6
+ sget-object v19, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
+ aput-object v19, v6, v23
+ const/16 v23, 0xb
+
.line 8
invoke-virtual {v5, v6}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
+ aput-object v20, v8, v23
+
+ sget-object v20, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
+
+ const/16 v24, 0xc
+
+ aput-object v20, v8, v24
+
.line 7
invoke-virtual {v7, v8}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
@@ -597,6 +607,16 @@
@@ -624,6 +636,22 @@
aput-object v18, v0, v20
aput-object v19, v1, v21
+ # hasReadoutTimestamp, set to false (reuse v17 with value 0)
+ invoke-static/range {v17 .. v17}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
+ const/16 v25, 0x0
+
+ invoke-static/range {v25 .. v25}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
+
+ move-result-object v20
+ aput-object v20, v0, v22
+
+ # readoutTimestamp, set to 0
+ invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
+ aput-object v20, v1, v23
+
+ const/16 v26, 0x0
+
+ invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
+
+ move-result-object v20
+ aput-object v20, v0, v23
+
.line 11
invoke-virtual {v6, v0}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
+ aput-object v20, v1, v24
+
.line 10
invoke-virtual {v8, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
--
2.47.2
2.39.5

View File

@@ -0,0 +1,66 @@
From f73bd633f5081be3e9589a07283d093f018d69e4 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Fri, 8 Mar 2024 02:11:53 +0100
Subject: [PATCH 2/8] Support third party galleries
---
smali/d/d/a/r4.smali | 9 ++-------
.../provider/ParallelProcessProvider.smali | 13 -------------
2 files changed, 2 insertions(+), 20 deletions(-)
diff --git a/smali/d/d/a/r4.smali b/smali/d/d/a/r4.smali
index 07a6b9ce3..fe260e18b 100644
--- a/smali/d/d/a/r4.smali
+++ b/smali/d/d/a/r4.smali
@@ -1001,10 +1001,10 @@
invoke-direct {p0, v0}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- const-string v0, "com.miui.gallery"
+ const-string v0, "android.intent.category.APP_GALLERY"
.line 4
- invoke-virtual {p0, v0}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
+ invoke-virtual {p0, v0}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
.line 5
invoke-virtual {p1, p0}, Landroid/app/Activity;->startActivity(Landroid/content/Intent;)V
@@ -1135,11 +1135,6 @@
invoke-direct {p0, v0, p2}, Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
:goto_0
- const-string p1, "com.miui.gallery"
-
- .line 12
- invoke-virtual {p0, p1}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
-
const/4 p1, 0x1
const-string p2, "from_MiuiCamera"
diff --git a/smali_classes4/com/xiaomi/camera/parallelservice/provider/ParallelProcessProvider.smali b/smali_classes4/com/xiaomi/camera/parallelservice/provider/ParallelProcessProvider.smali
index 6d731e0c7..5a905c3a2 100644
--- a/smali_classes4/com/xiaomi/camera/parallelservice/provider/ParallelProcessProvider.smali
+++ b/smali_classes4/com/xiaomi/camera/parallelservice/provider/ParallelProcessProvider.smali
@@ -786,19 +786,6 @@
.line 6
invoke-static {v0, v3, v2}, Lcom/android/camera/log/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
- .line 7
- invoke-static {}, Ld/k/a/b;->j2()Ld/k/a/b;
-
- move-result-object v0
-
- invoke-virtual {v0}, Ld/k/a/b;->v2()Z
-
- move-result v0
-
- if-nez v0, :cond_0
-
- const/4 v1, 0x4
-
:cond_0
:goto_0
return v1
--
2.39.5

View File

@@ -1,55 +0,0 @@
From 2bf799928e9002b991c22a7ba6f9024676b25584 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Sat, 26 Apr 2025 17:58:26 +0200
Subject: [PATCH 03/10] Add Ultra HDR heic configurations to
StreamConfigurationMap constructor
Commit "Add HEIC_ULTRAHDR image format"[1] added three new parameters to the constructor of StreamConfigurationMap.
Since HyperOS 2, xiaomi has added these methods but guarded them for sdk 36 and above.
Android 15 QPR2 (still sdk 35) added these methods already, so enforce the usage of the new constructor.
[1]: https://github.com/LineageOS/android_frameworks_base/commit/ba41b51131af923a797480a6e707d390d39852c2
---
smali_classes4/mg/c.smali | 24 +-----------------------
1 file changed, 1 insertion(+), 23 deletions(-)
diff --git a/smali_classes4/mg/c.smali b/smali_classes4/mg/c.smali
index e182c89c7..0a87f185a 100644
--- a/smali_classes4/mg/c.smali
+++ b/smali_classes4/mg/c.smali
@@ -553,31 +553,9 @@
.end method
.method public static e()Z
- .locals 2
-
- sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
-
- const/16 v1, 0x23
-
- if-gt v0, v1, :cond_1
-
- if-ne v0, v1, :cond_0
-
- sget v0, Landroid/os/Build$VERSION;->PREVIEW_SDK_INT:I
-
- if-lez v0, :cond_0
-
- goto :goto_0
-
- :cond_0
- const/4 v0, 0x0
+ .locals 1
- goto :goto_1
-
- :cond_1
- :goto_0
const/4 v0, 0x1
- :goto_1
return v0
.end method
--
2.47.2

View File

@@ -1,29 +1,30 @@
From f8f16e8924b49f143ab1014bf802929ef6c904bd Mon Sep 17 00:00:00 2001
From 3a68b3351d0c027141dab90851e801fabc827cbc Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 15 Oct 2024 01:44:04 +0200
Subject: [PATCH 10/10] Start gallery as a new task
Subject: [PATCH 3/8] Start gallery as a new task
When launched from lockscreen user will have to unlock for the gallery to be opened, then the gallery is living in the camera process which is wrong.
Let it create a new task for it.
---
smali/com/android/camera/l3.smali | 4 ++++
1 file changed, 4 insertions(+)
smali/d/d/a/r4.smali | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/smali/com/android/camera/l3.smali b/smali/com/android/camera/l3.smali
index a5c3e074d..986da34da 100644
--- a/smali/com/android/camera/l3.smali
+++ b/smali/com/android/camera/l3.smali
@@ -1055,6 +1055,10 @@
diff --git a/smali/d/d/a/r4.smali b/smali/d/d/a/r4.smali
index fe260e18b..b359f481d 100644
--- a/smali/d/d/a/r4.smali
+++ b/smali/d/d/a/r4.smali
@@ -1006,6 +1006,11 @@
.line 4
invoke-virtual {p0, v0}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
+ # FLAG_ACTIVITY_NEW_TASK
+ const v0, 0x10000000
+
+ invoke-virtual {p0, v0}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
+
.line 5
invoke-virtual {p1, p0}, Landroid/app/Activity;->startActivity(Landroid/content/Intent;)V
invoke-virtual {p1}, Lcom/android/camera/ActivityBase;->ri()Z
--
2.47.2
2.39.5

View File

@@ -1,33 +1,20 @@
From 26fda4e54af21647d8481f5c8a1198f350f1f55e Mon Sep 17 00:00:00 2001
From 317db7603d301e10fe460a46d273d35e9ca66856 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Wed, 16 Oct 2024 01:29:58 +0200
Subject: [PATCH 07/10] Change com.android.camera.action.REVIEW to
Subject: [PATCH 4/8] Change com.android.camera.action.REVIEW to
android.provider.action.REVIEW
This is the standard intent for review actions
---
smali/com/android/camera/a6.smali | 2 +-
smali/com/android/camera/l3.smali | 4 ++--
smali/d/d/a/r4.smali | 4 ++--
smali/d/d/a/z5.smali | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/smali/com/android/camera/a6.smali b/smali/com/android/camera/a6.smali
index 67970325c..c7d160683 100644
--- a/smali/com/android/camera/a6.smali
+++ b/smali/com/android/camera/a6.smali
@@ -193,7 +193,7 @@
.field public static d1:J = 0x0L
-.field public static final e:Ljava/lang/String; = "com.android.camera.action.REVIEW"
+.field public static final e:Ljava/lang/String; = "android.provider.action.REVIEW"
.field public static final e0:I = 0x8c36
diff --git a/smali/com/android/camera/l3.smali b/smali/com/android/camera/l3.smali
index ecc8ba3b0..a5c3e074d 100644
--- a/smali/com/android/camera/l3.smali
+++ b/smali/com/android/camera/l3.smali
@@ -1090,7 +1090,7 @@
diff --git a/smali/d/d/a/r4.smali b/smali/d/d/a/r4.smali
index b359f481d..77e0e1358 100644
--- a/smali/d/d/a/r4.smali
+++ b/smali/d/d/a/r4.smali
@@ -1060,7 +1060,7 @@
move-result p0
@@ -36,15 +23,28 @@ index ecc8ba3b0..a5c3e074d 100644
if-eqz p0, :cond_0
@@ -1151,7 +1151,7 @@
@@ -1129,7 +1129,7 @@
const-string p1, "GalleryHelper"
- const-string v1, "gotoGallery: com.android.camera.action.REVIEW"
+ const-string v1, "gotoGallery: android.provider.action.REVIEW"
.line 10
invoke-static {p1, v1, p0}, Lcom/android/camera/log/Log;->d(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
diff --git a/smali/d/d/a/z5.smali b/smali/d/d/a/z5.smali
index 451fe1cdf..b5b43f066 100644
--- a/smali/d/d/a/z5.smali
+++ b/smali/d/d/a/z5.smali
@@ -175,7 +175,7 @@
.field public static d1:Ljava/lang/Integer; = null
-.field public static final e:Ljava/lang/String; = "com.android.camera.action.REVIEW"
+.field public static final e:Ljava/lang/String; = "android.provider.action.REVIEW"
.field public static final e0:I = 0x7
--
2.47.2
2.39.5

View File

@@ -1,7 +1,7 @@
From c59c35c9aa1d792a19b93380a4b30808bee179db Mon Sep 17 00:00:00 2001
From fe5f37edc6c7d620b0a2e216cbb9d8e655d9df7a Mon Sep 17 00:00:00 2001
From: danielml <daniel@danielml.dev>
Date: Fri, 19 Apr 2024 17:32:08 +0200
Subject: [PATCH 02/10] Assume that mod_device is global
Subject: [PATCH 5/8] Assume that mod_device is global
Otherwise, the app tries to start a custom permissions dialog which
has dependencies on HyperOS Security Center app
@@ -9,22 +9,22 @@ has dependencies on HyperOS Security Center app
Change-Id: I8962a6e409f5aa30f84fccd482fefe78767069c2
Signed-off-by: danielml <daniel@danielml.dev>
---
smali_classes5/er/a.smali | 2 +-
smali_classes3/d/k/a/c.smali | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/smali_classes5/er/a.smali b/smali_classes5/er/a.smali
index 41cc3c63d..d38642250 100644
--- a/smali_classes5/er/a.smali
+++ b/smali_classes5/er/a.smali
@@ -39,7 +39,7 @@
diff --git a/smali_classes3/d/k/a/c.smali b/smali_classes3/d/k/a/c.smali
index 8b7ab1ebf..03d2c4733 100644
--- a/smali_classes3/d/k/a/c.smali
+++ b/smali_classes3/d/k/a/c.smali
@@ -595,7 +595,7 @@
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
- move-result v0
+ const/4 v0, 0x1
sput-boolean v0, Ler/a;->a:Z
sput-boolean v0, Ld/k/a/c;->E:Z
--
2.47.2
2.39.5

View File

@@ -1,510 +0,0 @@
From 7684693ef5b0586a6b513aea28486f3c2dd49c84 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Thu, 9 Jan 2025 23:47:48 +0100
Subject: [PATCH 05/10] Redo shortcut icon drawables
---
.../shortcut_capture_mode.webp | Bin 1806 -> 0 bytes
.../shortcut_document_mode.webp | Bin 1278 -> 0 bytes
.../shortcut_professional_mode.webp | Bin 1630 -> 0 bytes
.../shortcut_video_mode.webp | Bin 1326 -> 0 bytes
res/drawable-night/shortcut_capture_mode.webp | Bin 2152 -> 0 bytes
.../shortcut_document_mode.webp | Bin 1614 -> 0 bytes
.../shortcut_professional_mode.webp | Bin 2112 -> 0 bytes
res/drawable-night/shortcut_video_mode.webp | Bin 1698 -> 0 bytes
res/drawable/shortcat_cosmetic_mirror.xml | 21 +++++++++++++-----
res/drawable/shortcut_capture_mode.xml | 21 +++++++++++++-----
res/drawable/shortcut_document_mode.xml | 21 +++++++++++++-----
res/drawable/shortcut_professional_mode.xml | 21 +++++++++++++-----
res/drawable/shortcut_video_mode.xml | 21 +++++++++++++-----
13 files changed, 80 insertions(+), 25 deletions(-)
delete mode 100644 res/drawable-night-440dpi/shortcut_capture_mode.webp
delete mode 100644 res/drawable-night-440dpi/shortcut_document_mode.webp
delete mode 100644 res/drawable-night-440dpi/shortcut_professional_mode.webp
delete mode 100644 res/drawable-night-440dpi/shortcut_video_mode.webp
delete mode 100644 res/drawable-night/shortcut_capture_mode.webp
delete mode 100644 res/drawable-night/shortcut_document_mode.webp
delete mode 100644 res/drawable-night/shortcut_professional_mode.webp
delete mode 100644 res/drawable-night/shortcut_video_mode.webp
diff --git a/res/drawable-night-440dpi/shortcut_capture_mode.webp b/res/drawable-night-440dpi/shortcut_capture_mode.webp
deleted file mode 100644
index 115b3e746db119eb2a71da12a245ece959365be8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1806
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
diff --git a/res/drawable-night-440dpi/shortcut_document_mode.webp b/res/drawable-night-440dpi/shortcut_document_mode.webp
deleted file mode 100644
index c4ca9b81e40edb0b8487fd3d4214e7f170ce1d09..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1278
zcmV<a1OfX}Nk&HY1ONb6MM6+kP&il$0000G000120037206|PpNFo9N00EHQY<t^Q
zq&qL^0->b{X(|8(LjMxhBv~n&cz|q^oPO?^p8qGm0V2YI+enI(EYo3k&&(541huhw
z-Sp0nqj!B%=hkSIUXxvWV(70klax*ANT4e>iO{>2#I`#fpV`4t6y0GKnf*Y~9QINF
zBn?HiG12a-D7w`w3hRy%*sUXAJtfgwF$E>F5XQ<mCG=cNo_|G2y_)g2-{!;<d-I%<
zdoF((*2648XgOi%G4Si}pWYFO-RwImg0cE8a}to|YZ@e)ugeEPx&P{(0gGYwnFE1&
z_?(X%8cu&?M_i`UQxN%dnuzP}BQ1OW9mM`-PwmIn6mdC)2%d=R=ADwwQwWa}37j57
zcw$q&<Jg1{jwEslA@DDjrH(J&Zjv`<l*%y4l)A>`T4|4o*M=f+|37@=|N9sp*w`36
zgl~O_fz44Dc}<vyscukddQ^Iciu0)W5%solM2(x#qb@w|CAbg5jYr)4k)x7ZRIEY8
z;MPCbdX3z^Fqjx=`)!hO6t&;v?agDd_9kxo7`8o++yB7rFTwWjaQmaM{b$(zKJNGg
z?05?9_z&!O73}yL?sy>23xM%U-0@cA@nQDndD635i7Zk+O{z^4Ki(?2>m(81tyK(X
z33605Q;{^0({*E1ME4OZ*RWS{ogE?-ad()h=;~c7r`>6l#!V@@+?5-ZQj=Y?0?A)z
zMx|F9o7YY6{5X2oH+61}R&o_qP&gp20ssK;5CEM4Dp&wm06uLjl13yVp`k0A94LSd
ziDhj?(3t~Cfmcqm_ctlr81zfG18~mt2J=Vw>#zg7=L3Ih4d4Z<<ELLw<-Q)abEZ~U
zXZkAvKo87`sVI+<$WK>w089d1Pi_6;iez$JQxn>Jp0gEl>2i?vZdAb~q2G@qi+o5E
zm#rH?xB(x)QXDQPm~j9A{^@a9{NZr+`oIigl`SYYCcFLhn?^-n&XKE`a2#SaS!w4$
zYyf=9__3CzX*y3wI*^11Qm{fUKc?GOsXBAOEcnk6h=?7^LS_20|A@8t!@|@=X<M$s
zvaj}!!Do&<0x-r5LK&(_BVjtF|M0>j{f6Ky3m9RrBlUPuDZ)U)#SgvncKk!Ens&Um
zY!dgTWsw~CZ~ky~$g_tC%|RO@cdL|i$P}AvSmE2FHCk>x{SIOu#MV0-FZq?U82R06
z)q@r)S)Z)FPyNM>;@flj^LK5^Z#6-c3Q+Y9mky_RxA{Eup+1TwP{*J38l>Fk7?B;^
zxcWLOWd00V_mZifz}zSe7qtu<6C9OWX4v?aYaYG0;F>z+?kpUN+f{t<Xz=aL>=BL0
z=A1^r1t<wo7G)plVR4opytsQWuPCcP((r3+1KRIX&GMA4PBe!6&SM5@ELMR-8>2C<
z&y5V|U?hB|gvE&G)Uyf#`oPN$#uYErX<HEH)k3Nz{p*yqZ~I)XQGo$l<eG@oCg^qj
zM56?xH{jpO^Vh(}6)5gC-48Wb`&V!P8~$iBD?33=%Q%BwIn=STwtB*2*6docZ8opP
z<^S%H;?uFnv_-(!#4r7PvRnhnl2|edwF_5dex~!#u}i0zPq~zkE*VZC>zp*%W?V1j
o3$gOA3D94yP>g}V)I@R~H{SLC+?$9yrH0{Ri6fIhPk;ab0C{G3i2wiq
diff --git a/res/drawable-night-440dpi/shortcut_professional_mode.webp b/res/drawable-night-440dpi/shortcut_professional_mode.webp
deleted file mode 100644
index cb9a8f36c20788ef95c6bba9e67ec80f861a3b7f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1630
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
diff --git a/res/drawable-night-440dpi/shortcut_video_mode.webp b/res/drawable-night-440dpi/shortcut_video_mode.webp
deleted file mode 100644
index 080cf00f815a6a3a2acf21df57c700631cc2dea1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1326
zcmV+}1=0FaNk&E{1pok7MM6+kP&il$0000G000120037206|PpNN55800EFA0gNI!
z-IMHgILmY}hXYl;)wME2mzpDH{0ZBc9bV>ph$*Fv?QbyZ*iuUmhzJO7Bq@?2_V~IF
z3!h*jXkFUR^2&$FB={=N`l+)<Ue{d+Krk$HohbF82ZnxF7s56RU|Te8e3G_@DEf91
znbsJhIc`P$C&?kIxr=sc1koMEIaDh_z_J#BG=PX9WitRV2h3QR20^DS=l*#Rbv~iL
zJ`cjqlV6<%ai{sW>AEZh6{eIh3_1w4|KDDM63gU&j6jW}|7A{4q}!cb6Z!7t160}C
z?aWvg<6VxlL7DBH`N(U-+wC+#oz3kO`Y5({Q$Xg#?Ny?;kMke(Erw*){vz4GYix#F
zcq%uL<qh^Hvr@-9#23^zULd}Ukwm&=ej%;^(G|pBY`VrQkU>P?e@kc1kXbM`2y*EY
z;`;;Cx?&xOv2XP^Zu*@3fmDp+ZxHbd;&*a^?Mre0J0iY5#`xy?nG}fl^Wh#~kmYiG
zJk9&&@=A)okM;wP%1d#b{muCxc8pD!Xl0@oy>ICK6ulSejYrY^@qm{<^yWMH{QQNS
zpXKYxV{$!_t$&{p-yI^?KiPV{=ltnC<a({QztGzcsqNqN_M1}u@relivD$uK@BE>6
zUQ#>X>77T_&d+M+eZBh$wfhvk`yaLYDz*DHz576#GYa;XdiSlG_rv5@r$s+%4a<S#
zZCq2K_z9`uTN8=+vSwnK2;`_yVj}4xr|aCAh_)hDu5ru6HEBmG;=Y}j=-Ot4ex_(z
zBV&EY`gA|68%bSvffPt#q3evi)}{R{uY8zHg0J$dpE_&!8dgv^AeaIG0Pqk1odGIX
z09XJ%Z8DQaq$44rE0TNAfDMUb5kN|w9_*ww`RWFdHtciQ`WfDk-e~_Vb^!!yZS}XX
zBliJz{sjv}u<hEj-|i$vqWQOY8_{8WyN@j|Te{P${1>nt2g=Q*8y4$>s2*qk!a-b(
zhj}?ziey52-Gq|+JL(z0V>~qS>;IYi;eG;fjusJm0092&qaXi=*tRbEP!rhZuEg1=
z&-2oXV{5sian>+uywRPdklox>l&mtt?>Wd4gPWMg+195vK*9C4)oGX?xWmBHOS3{&
zJe2+E_}Ma7Jkntp$!lH+ahib)KjAad86!mAo}~J5);&l6eZLpi-*TV?u!cWGAHCDl
z4P?cPC|4`gdXX2=xCr;N!|>Sc&Npp%ZLKEG^c$GT=P!x8cd%>d971i|r;Y4?J<`mh
zbUs(Ej9Oi*O_&H2Kmq!)Ip3H}tYFH2%;P`ifmQOiV0MpN4ynF_$3;Wr)Bf8l^VN5%
ztqqVGBaa*1id1H<Rm??mPy(7G?~4fo)ngpAva|ZblKRA!k3I8_imlpJ=D3h4f#t3u
z4H~m>rAC(2X(~PBuSaVdflr01H=lUN$5knOpmvlCiimM$^lx{NA$@Vuos-H7*7VNU
z?tfBGV5ixi6fXecp37xXlz|>a&Vrz_6zg7lPys(^8tfUa4F+Lm$rl#;Q{nY75JY)+
z^8tP8?*3VmGab}X)jXvYQP=>XaB!9`Pp)T`7jxa>`H7u++OUiy;$3LoK_s02_u6OD
zVqOlpd|NyI`+0yC70AB_VEfq8W_6+`nafb61Ml4ivalG4#9?u3+H-&yZD9ru@ZXdB
k?QiCbKe6xx!gb6-Q~!Op%{;bgsc|DgOW?f5R89Z@06xN{nE(I)
diff --git a/res/drawable-night/shortcut_capture_mode.webp b/res/drawable-night/shortcut_capture_mode.webp
deleted file mode 100644
index 7b79e3f1c2563fb54f25b82a2ea1c33d25da4ba9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 2152
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
diff --git a/res/drawable-night/shortcut_document_mode.webp b/res/drawable-night/shortcut_document_mode.webp
deleted file mode 100644
index 31edabe330b5722535ce973deb1810d0b7b51ca7..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1614
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
MiiwNTaDV^+0NQ;G^#A|>
diff --git a/res/drawable-night/shortcut_professional_mode.webp b/res/drawable-night/shortcut_professional_mode.webp
deleted file mode 100644
index 9be6f1bdb2fd0fed5a4252dbc884a41cc37a2071..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 2112
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
diff --git a/res/drawable-night/shortcut_video_mode.webp b/res/drawable-night/shortcut_video_mode.webp
deleted file mode 100644
index 3fc697e75759d1a567769240b7363be82fb3342d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1698
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
diff --git a/res/drawable/shortcat_cosmetic_mirror.xml b/res/drawable/shortcat_cosmetic_mirror.xml
index 8113a1b75..6d999f043 100644
--- a/res/drawable/shortcat_cosmetic_mirror.xml
+++ b/res/drawable/shortcat_cosmetic_mirror.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<vector android:height="88.0dip" android:width="88.0dip" android:viewportWidth="88.0" android:viewportHeight="88.0"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#ff000000" android:pathData="M44,44m-44,0a44,44 0,1 1,88 0a44,44 0,1 1,-88 0" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillAlpha="0.06361997" android:fillType="evenOdd" />
- <path android:fillColor="#ff000000" android:pathData="M56 39C56 46.1797 50.1797 52 43 52C35.8203 52 30 46.1797 30 39C30 31.8203 35.8203 26 43 26C50.1797 26 56 31.8203 56 39ZM60 39C60 48.3888 52.3888 56 43 56C33.6112 56 26 48.3888 26 39C26 29.6112 33.6112 22 43 22C52.3888 22 60 29.6112 60 39ZM27 60C26.4477 60 26 60.4477 26 61V63C26 63.5523 26.4477 64 27 64H59C59.5523 64 60 63.5523 60 63V61C60 60.4477 59.5523 60 59 60H27Z" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillType="evenOdd" />
-</vector>
\ No newline at end of file
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@android:color/white" />
+ <foreground>
+ <inset android:inset="10%">
+ <vector
+ android:width="88dp"
+ android:height="88dp"
+ android:viewportWidth="88"
+ android:viewportHeight="88">
+ <path
+ android:fillColor="@android:color/black"
+ android:pathData="M56 39C56 46.1797 50.1797 52 43 52C35.8203 52 30 46.1797 30 39C30 31.8203 35.8203 26 43 26C50.1797 26 56 31.8203 56 39ZM60 39C60 48.3888 52.3888 56 43 56C33.6112 56 26 48.3888 26 39C26 29.6112 33.6112 22 43 22C52.3888 22 60 29.6112 60 39ZM27 60C26.4477 60 26 60.4477 26 61V63C26 63.5523 26.4477 64 27 64H59C59.5523 64 60 63.5523 60 63V61C60 60.4477 59.5523 60 59 60H27Z" />
+ </vector>
+ </inset>
+ </foreground>
+</adaptive-icon>
diff --git a/res/drawable/shortcut_capture_mode.xml b/res/drawable/shortcut_capture_mode.xml
index ae0d77ecb..de2383911 100644
--- a/res/drawable/shortcut_capture_mode.xml
+++ b/res/drawable/shortcut_capture_mode.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<vector android:height="89.0dip" android:width="88.0dip" android:viewportWidth="88.0" android:viewportHeight="89.0"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#ff000000" android:pathData="M44,44.5m-44,0a44,44 0,1 1,88 0a44,44 0,1 1,-88 0" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillAlpha="0.05935861" android:fillType="evenOdd" />
- <path android:fillColor="#ff000000" android:pathData="M52.3147,29.1434C52.7093,29.6722 52.9185,30.3163 52.9101,30.976L52.8011,39.5061L59.7661,44.4318C61.1189,45.3884 61.44,47.2606 60.4833,48.6133C60.1024,49.152 59.5545,49.5501 58.9245,49.7459L52.3972,51.7745L60.9608,60.3388C61.5466,60.9246 61.5466,61.8743 60.9608,62.4601C60.375,63.0459 59.4253,63.0459 58.8395,62.4601L50.2742,53.8955L48.2459,60.4245C47.7541,62.0066 46.0728,62.8905 44.4906,62.3987C43.8606,62.2029 43.3127,61.8048 42.9318,61.2661L38.0061,54.3011L29.476,54.4101C27.8193,54.4313 26.4591,53.1054 26.4375,51.4487C26.4295,50.789 26.6388,50.1449 27.0334,49.6161L32.1354,42.7792L29.3958,34.7003C28.8637,33.1312 29.7044,31.4279 31.2734,30.8958C31.8983,30.6839 32.5755,30.6839 33.2003,30.8958L41.2792,33.6354L48.1161,28.5334C49.444,27.5424 51.3237,27.8156 52.3147,29.1434ZM49.9103,30.9377L41.8094,36.983L32.2369,33.7369L35.483,43.3094L29.4377,51.4103L39.5448,51.2812L45.3811,59.5339L48.3816,49.8816L58.0339,46.8811L49.7812,41.0448L49.9103,30.9377Z" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillType="nonZero" />
-</vector>
\ No newline at end of file
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@android:color/white" />
+ <foreground>
+ <inset android:inset="10%">
+ <vector
+ android:width="88dp"
+ android:height="88dp"
+ android:viewportWidth="88"
+ android:viewportHeight="88">
+ <path
+ android:fillColor="@android:color/black"
+ android:pathData="M52.3147,29.1434C52.7093,29.6722 52.9185,30.3163 52.9101,30.976L52.8011,39.5061L59.7661,44.4318C61.1189,45.3884 61.44,47.2606 60.4833,48.6133C60.1024,49.152 59.5545,49.5501 58.9245,49.7459L52.3972,51.7745L60.9608,60.3388C61.5466,60.9246 61.5466,61.8743 60.9608,62.4601C60.375,63.0459 59.4253,63.0459 58.8395,62.4601L50.2742,53.8955L48.2459,60.4245C47.7541,62.0066 46.0728,62.8905 44.4906,62.3987C43.8606,62.2029 43.3127,61.8048 42.9318,61.2661L38.0061,54.3011L29.476,54.4101C27.8193,54.4313 26.4591,53.1054 26.4375,51.4487C26.4295,50.789 26.6388,50.1449 27.0334,49.6161L32.1354,42.7792L29.3958,34.7003C28.8637,33.1312 29.7044,31.4279 31.2734,30.8958C31.8983,30.6839 32.5755,30.6839 33.2003,30.8958L41.2792,33.6354L48.1161,28.5334C49.444,27.5424 51.3237,27.8156 52.3147,29.1434ZM49.9103,30.9377L41.8094,36.983L32.2369,33.7369L35.483,43.3094L29.4377,51.4103L39.5448,51.2812L45.3811,59.5339L48.3816,49.8816L58.0339,46.8811L49.7812,41.0448L49.9103,30.9377Z" />
+ </vector>
+ </inset>
+ </foreground>
+</adaptive-icon>
diff --git a/res/drawable/shortcut_document_mode.xml b/res/drawable/shortcut_document_mode.xml
index 92a302c12..cf5f89578 100644
--- a/res/drawable/shortcut_document_mode.xml
+++ b/res/drawable/shortcut_document_mode.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<vector android:height="88.0dip" android:width="88.0dip" android:viewportWidth="88.0" android:viewportHeight="88.0"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#ff000000" android:pathData="M44,44m-44,0a44,44 0,1 1,88 0a44,44 0,1 1,-88 0" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillAlpha="0.06361997" android:fillType="evenOdd" />
- <path android:fillColor="#ff000000" android:pathData="M58,26C60.2091,26 62,27.7909 62,30L62,58C62,60.2091 60.2091,62 58,62L30,62C27.7909,62 26,60.2091 26,58L26,30C26,27.7909 27.7909,26 30,26L58,26ZM57,29L31,29C29.9456,29 29.0818,29.8159 29.0055,30.8507L29,31L29,57C29,58.0544 29.8159,58.9182 30.8507,58.9945L31,59L57,59C58.0544,59 58.9182,58.1841 58.9945,57.1493L59,57L59,31C59,29.8954 58.1046,29 57,29ZM51.5,43C52.0523,43 52.5,43.4477 52.5,44L52.5,45C52.5,45.5523 52.0523,46 51.5,46L36.5,46C35.9477,46 35.5,45.5523 35.5,45L35.5,44C35.5,43.4477 35.9477,43 36.5,43L51.5,43ZM51.5,35C52.0523,35 52.5,35.4477 52.5,36L52.5,37C52.5,37.5523 52.0523,38 51.5,38L36.5,38C35.9477,38 35.5,37.5523 35.5,37L35.5,36C35.5,35.4477 35.9477,35 36.5,35L51.5,35Z" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillType="nonZero" />
-</vector>
\ No newline at end of file
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@android:color/white" />
+ <foreground>
+ <inset android:inset="10%">
+ <vector
+ android:width="88dp"
+ android:height="88dp"
+ android:viewportWidth="88"
+ android:viewportHeight="88">
+ <path
+ android:fillColor="@android:color/black"
+ android:pathData="M58,26C60.2091,26 62,27.7909 62,30L62,58C62,60.2091 60.2091,62 58,62L30,62C27.7909,62 26,60.2091 26,58L26,30C26,27.7909 27.7909,26 30,26L58,26ZM57,29L31,29C29.9456,29 29.0818,29.8159 29.0055,30.8507L29,31L29,57C29,58.0544 29.8159,58.9182 30.8507,58.9945L31,59L57,59C58.0544,59 58.9182,58.1841 58.9945,57.1493L59,57L59,31C59,29.8954 58.1046,29 57,29ZM51.5,43C52.0523,43 52.5,43.4477 52.5,44L52.5,45C52.5,45.5523 52.0523,46 51.5,46L36.5,46C35.9477,46 35.5,45.5523 35.5,45L35.5,44C35.5,43.4477 35.9477,43 36.5,43L51.5,43ZM51.5,35C52.0523,35 52.5,35.4477 52.5,36L52.5,37C52.5,37.5523 52.0523,38 51.5,38L36.5,38C35.9477,38 35.5,37.5523 35.5,37L35.5,36C35.5,35.4477 35.9477,35 36.5,35L51.5,35Z" />
+ </vector>
+ </inset>
+ </foreground>
+</adaptive-icon>
diff --git a/res/drawable/shortcut_professional_mode.xml b/res/drawable/shortcut_professional_mode.xml
index 16da060f0..afe3ffa78 100644
--- a/res/drawable/shortcut_professional_mode.xml
+++ b/res/drawable/shortcut_professional_mode.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<vector android:height="89.0dip" android:width="88.0dip" android:viewportWidth="88.0" android:viewportHeight="89.0"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#ff000000" android:pathData="M44,44.5m-44,0a44,44 0,1 1,88 0a44,44 0,1 1,-88 0" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillAlpha="0.05935861" android:fillType="evenOdd" />
- <path android:fillColor="#ff000000" android:pathData="M48.7352,25.5C50.1403,25.5 51.4423,26.2372 52.1652,27.442L53.7087,30.0145C53.8894,30.3157 54.2149,30.5 54.5662,30.5L59,30.5C61.7614,30.5 64,32.7386 64,35.5L64,56.5C64,59.2614 61.7614,61.5 59,61.5L29,61.5C26.2386,61.5 24,59.2614 24,56.5L24,35.5C24,32.7386 26.2386,30.5 29,30.5L33.4338,30.5C33.7851,30.5 34.1106,30.3157 34.2913,30.0145L35.8348,27.442C36.5577,26.2372 37.8597,25.5 39.2648,25.5L48.7352,25.5ZM48.7352,28.5L39.2648,28.5C38.9135,28.5 38.588,28.6843 38.4073,28.9855L36.8638,31.558C36.1409,32.7628 34.8389,33.5 33.4338,33.5L29,33.5C27.8954,33.5 27,34.3954 27,35.5L27,56.5C27,57.6046 27.8954,58.5 29,58.5L59,58.5C60.1046,58.5 61,57.6046 61,56.5L61,35.5C61,34.3954 60.1046,33.5 59,33.5L54.5662,33.5C53.1611,33.5 51.8591,32.7628 51.1362,31.558L49.5927,28.9855C49.412,28.6843 49.0865,28.5 48.7352,28.5ZM44,36C48.6944,36 52.5,39.8056 52.5,44.5C52.5,49.1944 48.6944,53 44,53C39.3056,53 35.5,49.1944 35.5,44.5C35.5,39.8056 39.3056,36 44,36ZM44,39C40.9624,39 38.5,41.4624 38.5,44.5C38.5,47.5376 40.9624,50 44,50C47.0376,50 49.5,47.5376 49.5,44.5C49.5,41.4624 47.0376,39 44,39Z" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillType="nonZero" />
-</vector>
\ No newline at end of file
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@android:color/white" />
+ <foreground>
+ <inset android:inset="10%">
+ <vector
+ android:width="88dp"
+ android:height="89dp"
+ android:viewportWidth="88"
+ android:viewportHeight="89">
+ <path
+ android:fillColor="@android:color/black"
+ android:pathData="M48.7352,25.5C50.1403,25.5 51.4423,26.2372 52.1652,27.442L53.7087,30.0145C53.8894,30.3157 54.2149,30.5 54.5662,30.5L59,30.5C61.7614,30.5 64,32.7386 64,35.5L64,56.5C64,59.2614 61.7614,61.5 59,61.5L29,61.5C26.2386,61.5 24,59.2614 24,56.5L24,35.5C24,32.7386 26.2386,30.5 29,30.5L33.4338,30.5C33.7851,30.5 34.1106,30.3157 34.2913,30.0145L35.8348,27.442C36.5577,26.2372 37.8597,25.5 39.2648,25.5L48.7352,25.5ZM48.7352,28.5L39.2648,28.5C38.9135,28.5 38.588,28.6843 38.4073,28.9855L36.8638,31.558C36.1409,32.7628 34.8389,33.5 33.4338,33.5L29,33.5C27.8954,33.5 27,34.3954 27,35.5L27,56.5C27,57.6046 27.8954,58.5 29,58.5L59,58.5C60.1046,58.5 61,57.6046 61,56.5L61,35.5C61,34.3954 60.1046,33.5 59,33.5L54.5662,33.5C53.1611,33.5 51.8591,32.7628 51.1362,31.558L49.5927,28.9855C49.412,28.6843 49.0865,28.5 48.7352,28.5ZM44,36C48.6944,36 52.5,39.8056 52.5,44.5C52.5,49.1944 48.6944,53 44,53C39.3056,53 35.5,49.1944 35.5,44.5C35.5,39.8056 39.3056,36 44,36ZM44,39C40.9624,39 38.5,41.4624 38.5,44.5C38.5,47.5376 40.9624,50 44,50C47.0376,50 49.5,47.5376 49.5,44.5C49.5,41.4624 47.0376,39 44,39Z" />
+ </vector>
+ </inset>
+ </foreground>
+</adaptive-icon>
diff --git a/res/drawable/shortcut_video_mode.xml b/res/drawable/shortcut_video_mode.xml
index 906dcc064..c0b9cd5f3 100644
--- a/res/drawable/shortcut_video_mode.xml
+++ b/res/drawable/shortcut_video_mode.xml
@@ -1,6 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<vector android:height="88.0dip" android:width="88.0dip" android:viewportWidth="88.0" android:viewportHeight="88.0"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#ff000000" android:pathData="M44,44m-44,0a44,44 0,1 1,88 0a44,44 0,1 1,-88 0" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillAlpha="0.05935861" android:fillType="evenOdd" />
- <path android:fillColor="#ff000000" android:pathData="M51,28.5C53.2091,28.5 55,30.2909 55,32.5L55,37.923L60.2924,34.2591C61.6546,33.316 63.5235,33.6558 64.4666,35.0181C64.8139,35.5198 65,36.1155 65,36.7257L65,51.2743C65,52.9311 63.6569,54.2743 62,54.2743C61.3898,54.2743 60.7941,54.0882 60.2924,53.7409L55,50.077L55,55.5C55,57.7091 53.2091,59.5 51,59.5L29,59.5C26.7909,59.5 25,57.7091 25,55.5L25,32.5C25,30.2909 26.7909,28.5 29,28.5L51,28.5ZM51,31.5L29,31.5C28.4477,31.5 28,31.9477 28,32.5L28,55.5C28,56.0523 28.4477,56.5 29,56.5L51,56.5C51.5523,56.5 52,56.0523 52,55.5L52,32.5C52,31.9477 51.5523,31.5 51,31.5ZM62,36.7257L55,41.5719L55,46.4281L62,51.2743L62,36.7257Z" android:strokeColor="#00000000" android:strokeWidth="1.0" android:fillType="nonZero" />
-</vector>
\ No newline at end of file
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@android:color/white" />
+ <foreground>
+ <inset android:inset="10%">
+ <vector
+ android:width="88dp"
+ android:height="88dp"
+ android:viewportWidth="88"
+ android:viewportHeight="88">
+ <path
+ android:fillColor="@android:color/black"
+ android:pathData="M51,28.5C53.2091,28.5 55,30.2909 55,32.5L55,37.923L60.2924,34.2591C61.6546,33.316 63.5235,33.6558 64.4666,35.0181C64.8139,35.5198 65,36.1155 65,36.7257L65,51.2743C65,52.9311 63.6569,54.2743 62,54.2743C61.3898,54.2743 60.7941,54.0882 60.2924,53.7409L55,50.077L55,55.5C55,57.7091 53.2091,59.5 51,59.5L29,59.5C26.7909,59.5 25,57.7091 25,55.5L25,32.5C25,30.2909 26.7909,28.5 29,28.5L51,28.5ZM51,31.5L29,31.5C28.4477,31.5 28,31.9477 28,32.5L28,55.5C28,56.0523 28.4477,56.5 29,56.5L51,56.5C51.5523,56.5 52,56.0523 52,55.5L52,32.5C52,31.9477 51.5523,31.5 51,31.5ZM62,36.7257L55,41.5719L55,46.4281L62,51.2743L62,36.7257Z" />
+ </vector>
+ </inset>
+ </foreground>
+</adaptive-icon>
--
2.47.2

View File

@@ -1,7 +1,7 @@
From 631c415898d1eb57db416297a5ab2e821b4b1d37 Mon Sep 17 00:00:00 2001
From 9e073a6020760d78a553825434472756b990900e Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 23 Apr 2024 19:17:07 +0200
Subject: [PATCH 04/10] Revert icon to cupid V14.0.2.0.TLCMICM
Subject: [PATCH 6/8] Revert icon to cupid V14.0.2.0.TLCMICM
---
res/mipmap-anydpi/ic_launcher_camera_cv.xml | 6 ++++++
@@ -7467,5 +7467,5 @@ literal 0
HcmV?d00001
--
2.47.2
2.39.5

View File

@@ -1,39 +0,0 @@
From efbd05668a44ab42639da0514d286dd87926648b Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Fri, 8 Mar 2024 02:11:53 +0100
Subject: [PATCH 06/10] Support third party galleries
---
smali/com/android/camera/l3.smali | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/smali/com/android/camera/l3.smali b/smali/com/android/camera/l3.smali
index de3defeb1..ecc8ba3b0 100644
--- a/smali/com/android/camera/l3.smali
+++ b/smali/com/android/camera/l3.smali
@@ -1051,9 +1051,9 @@
invoke-direct {p0, v0}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- const-string v0, "com.miui.gallery"
+ const-string v0, "android.intent.category.APP_GALLERY"
- invoke-virtual {p0, v0}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
+ invoke-virtual {p0, v0}, Landroid/content/Intent;->addCategory(Ljava/lang/String;)Landroid/content/Intent;
invoke-virtual {p1, p0}, Landroid/app/Activity;->startActivity(Landroid/content/Intent;)V
@@ -1160,10 +1160,6 @@
invoke-direct {p0, v0, p2}, Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V
:goto_0
- const-string p1, "com.miui.gallery"
-
- invoke-virtual {p0, p1}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
-
const-string p1, "from_MiuiCamera"
const/4 p2, 0x1
--
2.47.2

View File

@@ -1,19 +1,57 @@
From 46d9d51b8fc8a9c82003c8461fab2fdd5fc16088 Mon Sep 17 00:00:00 2001
From 1616710aad76bf83a59263fd9f3b999251c075f2 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 15 Oct 2024 18:58:34 +0200
Subject: [PATCH 08/10] Read AOSP integer camera_launch_source intent in
Subject: [PATCH 7/8] Read AOSP integer camera_launch_source intent in
STILL_IMAGE_CAMERA case
MIUI changed the camera_launch_source to be a string, but AOSP provides integers.
---
smali/com/android/camera/s2.smali | 78 +++++++++++--------------------
1 file changed, 27 insertions(+), 51 deletions(-)
smali/d/d/a/b4.smali | 83 ++++++++++++++------------------------------
1 file changed, 27 insertions(+), 56 deletions(-)
diff --git a/smali/com/android/camera/s2.smali b/smali/com/android/camera/s2.smali
index 2b38cd214..874c246cd 100644
--- a/smali/com/android/camera/s2.smali
+++ b/smali/com/android/camera/s2.smali
@@ -528,9 +528,11 @@
diff --git a/smali/d/d/a/b4.smali b/smali/d/d/a/b4.smali
index bb1870a2f..980cfb364 100644
--- a/smali/d/d/a/b4.smali
+++ b/smali/d/d/a/b4.smali
@@ -1181,27 +1181,21 @@
const-string v0, "com.android.systemui.camera_launch_source"
- invoke-virtual {p0, v0}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
-
- move-result-object p0
-
- const-string v0, "lockscreen_affordance"
-
- .line 7
- invoke-static {p0, v0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result v0
+ const/4 v1, -0x1
- if-nez v0, :cond_3
+ invoke-virtual {p0, v0, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
- const-string v0, "power_double_tap"
+ move-result p0
- .line 8
- invoke-static {p0, v0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+ # CAMERA_LAUNCH_SOURCE_POWER_DOUBLE_TAP = 1
+ const/4 v1, 0x1
+ if-eq p0, v1, :cond_3
- move-result p0
+ # CAMERA_LAUNCH_SOURCE_QUICK_AFFORDANCE = 3
+ const/4 v1, 0x3
+ if-eq p0, v1, :cond_3
- if-eqz p0, :cond_4
+ goto :cond_4
:cond_3
const/4 v2, 0x1
@@ -2858,9 +2852,11 @@
const-string v1, "com.android.systemui.camera_launch_source"
@@ -25,9 +63,9 @@ index 2b38cd214..874c246cd 100644
+
+ move-result v0
.line 2
new-instance v1, Ljava/lang/StringBuilder;
@@ -540,7 +542,7 @@
@@ -2871,7 +2867,7 @@
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
@@ -36,7 +74,7 @@ index 2b38cd214..874c246cd 100644
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
@@ -562,19 +564,23 @@
@@ -2894,20 +2890,24 @@
move-result v1
@@ -46,6 +84,7 @@ index 2b38cd214..874c246cd 100644
if-eqz v1, :cond_0
.line 4
- invoke-static {v0, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+ const/4 v2, 0x1
@@ -64,12 +103,12 @@ index 2b38cd214..874c246cd 100644
+
+ return-object v2
.line 5
:cond_0
iget-object p0, p0, Lcom/android/camera/s2;->a:Landroid/content/Intent;
@@ -589,35 +595,9 @@
@@ -2924,38 +2924,9 @@
if-eqz p0, :cond_1
.line 6
- invoke-static {v0, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result p0
@@ -78,14 +117,16 @@ index 2b38cd214..874c246cd 100644
-
- const-string p0, "double_click_volume_down"
-
- .line 7
- invoke-static {v0, p0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result p0
-
- if-nez p0, :cond_1
-
- const-string/jumbo p0, "stabilizer"
- const-string p0, "stabilizer"
-
- .line 8
- invoke-static {v0, p0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result p0
@@ -94,52 +135,17 @@ index 2b38cd214..874c246cd 100644
-
- const-string p0, "miwatch"
-
- .line 9
- invoke-static {v0, p0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result p0
+ if-eq v0, v4, :cond_1
- move-result p0
-
- if-eqz p0, :cond_2
+ goto :cond_2
:cond_1
const/4 v2, 0x1
@@ -1078,25 +1058,21 @@
const-string v0, "com.android.systemui.camera_launch_source"
- invoke-virtual {p0, v0}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
-
- move-result-object p0
-
- const-string v0, "lockscreen_affordance"
-
- invoke-static {p0, v0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
-
- move-result v0
+ const/4 v1, -0x1
- if-nez v0, :cond_3
+ invoke-virtual {p0, v0, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
- const-string v0, "power_double_tap"
+ move-result p0
- invoke-static {p0, v0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
+ # CAMERA_LAUNCH_SOURCE_POWER_DOUBLE_TAP = 1
+ const/4 v1, 0x1
+ if-eq p0, v1, :cond_3
- move-result p0
+ # CAMERA_LAUNCH_SOURCE_QUICK_AFFORDANCE = 3
+ const/4 v1, 0x3
+ if-eq p0, v1, :cond_3
- if-eqz p0, :cond_4
+ goto :cond_4
:cond_3
const/4 v2, 0x1
--
2.47.2
2.39.5

View File

@@ -1,69 +1,58 @@
From bbdd868a76386a9987b085dc14a759bdb13a4cd5 Mon Sep 17 00:00:00 2001
From dc0b4be20e39254b63f68aad1b64925d915f7a70 Mon Sep 17 00:00:00 2001
From: Arian <arian.kulmer@web.de>
Date: Tue, 15 Oct 2024 19:06:16 +0200
Subject: [PATCH 09/10] Force enable StartActivityWhenLocked
Subject: [PATCH 8/8] Force enable StartActivityWhenLocked
MIUI sends this with the intent, but on AOSP we don't get this parameter
---
smali/com/android/camera/s2.smali | 65 ++-----------------------------
1 file changed, 3 insertions(+), 62 deletions(-)
smali/d/d/a/b4.smali | 54 +++-----------------------------------------
1 file changed, 3 insertions(+), 51 deletions(-)
diff --git a/smali/com/android/camera/s2.smali b/smali/com/android/camera/s2.smali
index 874c246cd..b224d0c76 100644
--- a/smali/com/android/camera/s2.smali
+++ b/smali/com/android/camera/s2.smali
@@ -280,70 +280,11 @@
diff --git a/smali/d/d/a/b4.smali b/smali/d/d/a/b4.smali
index 980cfb364..eac9068f7 100644
--- a/smali/d/d/a/b4.smali
+++ b/smali/d/d/a/b4.smali
@@ -312,59 +312,11 @@
.end method
.method public static O(Landroid/content/Intent;)Z
.method public static K(Landroid/content/Intent;)Z
- .locals 3
- .annotation system Ldalvik/annotation/MethodParameters;
- accessFlags = {
- 0x0
- }
- names = {
- "intent"
- }
- .end annotation
-
- const/4 v0, 0x0
-
- if-eqz p0, :cond_1
- if-eqz p0, :cond_0
-
- const-string v1, "StartActivityWhenLocked"
-
- .line 1
- invoke-virtual {p0, v1, v0}, Landroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z
-
- move-result v1
-
- if-nez v1, :cond_0
-
- const-string v1, "from_keyguard_shortcut"
-
- invoke-virtual {p0, v1, v0}, Landroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z
-
- move-result v1
-
- if-nez v1, :cond_0
-
- const-string v1, "android.media.action.STILL_IMAGE_CAMERA_SECURE"
-
- invoke-virtual {p0}, Landroid/content/Intent;->getAction()Ljava/lang/String;
-
- move-result-object p0
-
- invoke-virtual {v1, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-
- move-result p0
-
- if-eqz p0, :cond_1
- if-eqz p0, :cond_0
-
- :cond_0
- const/4 p0, 0x1
-
- goto :goto_0
-
- :cond_1
- :cond_0
- move p0, v0
-
- .line 2
- :goto_0
- new-instance v1, Ljava/lang/StringBuilder;
-
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
-
- const-string/jumbo v2, "start activity when locked: "
- const-string v2, "start activity when locked: "
-
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-
@@ -85,7 +74,7 @@ index 874c246cd..b224d0c76 100644
+ return v0
.end method
.method public static Q(Landroid/content/Intent;)Z
.method public static M(Landroid/content/Intent;)Z
--
2.47.2
2.39.5

View File

@@ -1,7 +1,7 @@
# All unpinned blobs below are extracted from marble OS2.0.216.0.VMRMIXM
# All unpinned blobs below are extracted from cupid V816.0.6.0.ULCMIXM
product/priv-app/MiuiCamera/MiuiCamera.apk:system/priv-app/MiuiCamera/MiuiCamera.apk;OVERRIDES=Aperture
product/priv-app/MiuiCamera/MiuiCamera.apk:system/priv-app/MiuiCamera/MiuiCamera.apk;OVERRIDES=Aperture,Snap,Camera2,GoogleCameraGo
system_ext/lib64/libcamera_algoup_jni.xiaomi.so:system/lib64/libcamera_algoup_jni.xiaomi.so
system_ext/lib64/libcamera_mianode_jni.xiaomi.so:system/lib64/libcamera_mianode_jni.xiaomi.so
system_ext/lib64/libmicampostproc_client.so:system/lib64/libmicampostproc_client.so
system_ext/lib64/vendor.xiaomi.hardware.campostproc@1.0.so:system/lib64/vendor.xiaomi.hardware.campostproc@1.0.so;MODULE_SUFFIX=_system
system_ext/lib64/vendor.xiaomi.hardware.campostproc@1.0.so:system/lib64/vendor.xiaomi.hardware.campostproc@1.0.so;MODULE=vendor.xiaomi.hardware.campostproc@1.0-system

View File

@@ -1 +0,0 @@
#!./extract-files.py --regenerate_makefiles

62
setup-makefiles.sh Executable file
View File

@@ -0,0 +1,62 @@
#!/bin/bash
#
# SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# SPDX-FileCopyrightText: 2017-2024 The LineageOS Project#
# SPDX-License-Identifier: Apache-2.0
#
set -e
DEVICE=miuicamera-marble
VENDOR=xiaomi
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
ANDROID_ROOT="${MY_DIR}/../../.."
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}"
exit 1
fi
source "${HELPER}"
function vendor_imports() {
cat << EOF >> "$1"
"device/xiaomi/miuicamera-marble",
EOF
}
function lib_to_package_fixup_system_variants() {
if [ "$2" != "system" ]; then
return 1
fi
case "$1" in
vendor.xiaomi.hardware.campostproc@1.0)
echo "$1-system"
;;
*)
return 1
;;
esac
}
function lib_to_package_fixup() {
lib_to_package_fixup_clang_rt_ubsan_standalone "$1" ||
lib_to_package_fixup_proto_3_9_1 "$1" ||
lib_to_package_fixup_system_variants "$@"
}
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}"
# Warning headers and guards
write_headers
write_makefiles "${MY_DIR}/proprietary-files.txt" true
# Finish
write_footers