diff --git a/patches_platform/frameworks_base/0001-Disable-FP-lockouts-optionally.patch b/patches_platform/frameworks_base/0001-Disable-FP-lockouts-optionally.patch index 20d8bc1..7896cbb 100644 --- a/patches_platform/frameworks_base/0001-Disable-FP-lockouts-optionally.patch +++ b/patches_platform/frameworks_base/0001-Disable-FP-lockouts-optionally.patch @@ -1,7 +1,7 @@ -From 9d54280afa329e036ba97cd5f39e1371c4beea0a Mon Sep 17 00:00:00 2001 +From 92d00894b0d84c8d3fd0a6ba253132ac96402251 Mon Sep 17 00:00:00 2001 From: AndyCGYan Date: Fri, 22 Mar 2019 00:41:20 +0800 -Subject: [PATCH 01/31] Disable FP lockouts optionally +Subject: [PATCH 01/34] Disable FP lockouts optionally Both timed and permanent lockouts - GET THE FUCK OUT Now targeting LockoutFramework, introduced in Android 12 @@ -13,7 +13,7 @@ Change-Id: I2d4b091f3546d4d7903bfb4d5585629212dc9915 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java -index 36d56c8a1544..7ee15e97a383 100644 +index 0730c672acd9..972421758223 100644 --- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java +++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java @@ -27,6 +27,7 @@ import android.content.IntentFilter; @@ -32,10 +32,10 @@ index 36d56c8a1544..7ee15e97a383 100644 private final class LockoutReceiver extends BroadcastReceiver { @Override -@@ -105,23 +107,27 @@ public class LockoutFrameworkImpl implements LockoutTracker { - } +@@ -107,24 +109,28 @@ public class LockoutFrameworkImpl implements LockoutTracker { - void addFailedAttemptForUser(int userId) { + @Override + public void addFailedAttemptForUser(int userId) { - mFailedAttempts.put(userId, mFailedAttempts.get(userId, 0) + 1); - mTimedLockoutCleared.put(userId, false); + if (!SystemProperties.getBoolean(DISABLE_FP_LOCKOUTS_PROPERTY, false)) { @@ -51,7 +51,8 @@ index 36d56c8a1544..7ee15e97a383 100644 } @Override - public @LockoutMode int getLockoutModeForUser(int userId) { + @LockoutMode + public int getLockoutModeForUser(int userId) { - final int failedAttempts = mFailedAttempts.get(userId, 0); - if (failedAttempts >= MAX_FAILED_ATTEMPTS_LOCKOUT_PERMANENT) { - return LOCKOUT_PERMANENT; diff --git a/patches_platform/frameworks_base/0002-Disable-vendor-mismatch-warning.patch b/patches_platform/frameworks_base/0002-Disable-vendor-mismatch-warning.patch index c808c25..a5b706b 100644 --- a/patches_platform/frameworks_base/0002-Disable-vendor-mismatch-warning.patch +++ b/patches_platform/frameworks_base/0002-Disable-vendor-mismatch-warning.patch @@ -1,22 +1,21 @@ -From cdbb1b13a0c0577db791e0826e55cbd922a3d533 Mon Sep 17 00:00:00 2001 +From b3aa7feea26bb5d713a8511f5720f33f0c204002 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Thu, 5 Apr 2018 10:01:19 +0800 -Subject: [PATCH 02/31] Disable vendor mismatch warning +Subject: [PATCH 02/34] Disable vendor mismatch warning Change-Id: Ieb8fe91e2f02462f074312ed0f4885d183e9780b --- - .../server/wm/ActivityTaskManagerService.java | 16 ++-------------- - 1 file changed, 2 insertions(+), 14 deletions(-) + .../server/wm/ActivityTaskManagerService.java | 14 +------------- + 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java -index 8382fa97c5c5..a3e37193d513 100644 +index ad9ac201e22b..b42e4e2e22dc 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java -@@ -6116,20 +6116,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { - } +@@ -6237,19 +6237,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { - if (!Build.isBuildConsistent()) { -- Slog.e(TAG, "Build fingerprint is not consistent, warning user"); + if (!isBuildConsistent) { + Slog.e(TAG, "Build fingerprint is not consistent, warning user"); - mUiHandler.post(() -> { - if (mShowDialogs) { - AlertDialog d = new BaseErrorDialog(mUiContext); @@ -30,11 +29,10 @@ index 8382fa97c5c5..a3e37193d513 100644 - d.show(); - } - }); -+ Slog.e(TAG, "Build fingerprint is not consistent"); + // Do not emit warning about vendor mismatch } } - } + Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); -- 2.34.1 diff --git a/patches_platform/frameworks_base/0003-Keyguard-Allow-locking-to-any-rotation-mode.patch b/patches_platform/frameworks_base/0003-Keyguard-Allow-locking-to-any-rotation-mode.patch index 3e770af..86f97ca 100644 --- a/patches_platform/frameworks_base/0003-Keyguard-Allow-locking-to-any-rotation-mode.patch +++ b/patches_platform/frameworks_base/0003-Keyguard-Allow-locking-to-any-rotation-mode.patch @@ -1,7 +1,7 @@ -From dc1b9d58a7f5522fb1c5b7155b52c733b9f5080d Mon Sep 17 00:00:00 2001 +From e492a141400c534bfc1f08b904e7e7f60e92164e Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 21 Jan 2024 22:03:47 +0800 -Subject: [PATCH 03/31] Keyguard: Allow locking to any rotation mode +Subject: [PATCH 03/34] Keyguard: Allow locking to any rotation mode Change-Id: I0f12c433f3547e9bfcdbc2cf50e2a4f3ec8ca311 --- @@ -9,10 +9,10 @@ Change-Id: I0f12c433f3547e9bfcdbc2cf50e2a4f3ec8ca311 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationShadeWindowControllerImpl.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationShadeWindowControllerImpl.java -index 2ebe2bcf7099..6e51746c6ea7 100644 +index b4082694bbe5..f9f3dd911a74 100644 --- a/packages/SystemUI/src/com/android/systemui/shade/NotificationShadeWindowControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationShadeWindowControllerImpl.java -@@ -382,12 +382,9 @@ public class NotificationShadeWindowControllerImpl implements NotificationShadeW +@@ -431,12 +431,9 @@ public class NotificationShadeWindowControllerImpl implements NotificationShadeW } private void adjustScreenOrientation(NotificationShadeWindowState state) { diff --git a/patches_platform/frameworks_base/0004-Keyguard-Fix-colors-of-slices-not-updating-on-doze.patch b/patches_platform/frameworks_base/0004-Keyguard-Fix-colors-of-slices-not-updating-on-doze.patch index 1f58627..d78eb60 100644 --- a/patches_platform/frameworks_base/0004-Keyguard-Fix-colors-of-slices-not-updating-on-doze.patch +++ b/patches_platform/frameworks_base/0004-Keyguard-Fix-colors-of-slices-not-updating-on-doze.patch @@ -1,7 +1,7 @@ -From 966dbb52453bb6bd3d301a23c6ab4101951a2489 Mon Sep 17 00:00:00 2001 +From beea20462b965e2c790549f7d854ed71b46b54e9 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Tue, 17 Jan 2023 17:19:19 +0000 -Subject: [PATCH 04/31] Keyguard: Fix colors of slices not updating on doze +Subject: [PATCH 04/34] Keyguard: Fix colors of slices not updating on doze Slices were invisible (black) in doze when using light wallpapers Introduced in https://github.com/LineageOS/android_frameworks_base/commit/a19e59d717ec6d573c11c7e8277bba3c4de189c2 @@ -13,10 +13,10 @@ Change-Id: I06abd8bf2e28655cc9e6d81366fd82a13454ec5a 2 files changed, 8 insertions(+) diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java -index c314586e4a21..5262a2c04c00 100644 +index 2a54a4eee657..de2d1ec89b61 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java -@@ -207,6 +207,13 @@ public class KeyguardStatusViewController extends ViewController Date: Sat, 16 Oct 2021 02:23:48 +0000 -Subject: [PATCH 05/31] UI: Adjust default navbar layouts +Subject: [PATCH 05/34] UI: Adjust default navbar layouts - Slightly tighten nodpi layout - Remove sw372dp layout - looks terrible, probably meant for legacy phablets, but most modern phones qualify @@ -45,10 +45,10 @@ index 07b797a32428..000000000000 - left[.25W],back[.5WC];home;recent[.5WC],right[.25W] - diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml -index f530d0d6e06f..9cd22313e0a1 100644 +index 038e9da33b83..4791ad8969f0 100644 --- a/packages/SystemUI/res/values/config.xml +++ b/packages/SystemUI/res/values/config.xml -@@ -315,7 +315,7 @@ +@@ -325,7 +325,7 @@ diff --git a/patches_platform/frameworks_base/0006-UI-Adjust-split-screen-divider.patch b/patches_platform/frameworks_base/0006-UI-Adjust-split-screen-divider.patch index 9cfdfd8..ef1447e 100644 --- a/patches_platform/frameworks_base/0006-UI-Adjust-split-screen-divider.patch +++ b/patches_platform/frameworks_base/0006-UI-Adjust-split-screen-divider.patch @@ -1,7 +1,7 @@ -From 78487f8b35969298a76f61ae71651f537fe8e90e Mon Sep 17 00:00:00 2001 +From 5b8bc8a9cf51ed8fb40101b7a5234fccaee36327 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 19 Mar 2022 09:22:24 +0000 -Subject: [PATCH 06/31] UI: Adjust split-screen divider +Subject: [PATCH 06/34] UI: Adjust split-screen divider - Kill rounded corners - where two rectangles collide should be perfectly straight - Make it black (pre-Sv2) for phones @@ -150,7 +150,7 @@ index 000000000000..8a1907da76e5 + @color/taskbar_background + diff --git a/libs/WindowManager/Shell/res/values/colors.xml b/libs/WindowManager/Shell/res/values/colors.xml -index b2ec98bc1b15..b21a6f50c9ab 100644 +index fae71efe3b39..fb50f0119b43 100644 --- a/libs/WindowManager/Shell/res/values/colors.xml +++ b/libs/WindowManager/Shell/res/values/colors.xml @@ -18,7 +18,7 @@ @@ -163,10 +163,10 @@ index b2ec98bc1b15..b21a6f50c9ab 100644 #60000000 #00000000 diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java -index 755dba0c895f..9a2c9bfdab5d 100644 +index 53caddb52f23..fae5008283cc 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java -@@ -157,23 +157,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange +@@ -168,23 +168,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange } private void updateDividerConfig(Context context) { diff --git a/patches_platform/frameworks_base/0007-UI-Disable-wallpaper-zoom.patch b/patches_platform/frameworks_base/0007-UI-Disable-wallpaper-zoom.patch index 8632a7f..c44dac8 100644 --- a/patches_platform/frameworks_base/0007-UI-Disable-wallpaper-zoom.patch +++ b/patches_platform/frameworks_base/0007-UI-Disable-wallpaper-zoom.patch @@ -1,7 +1,7 @@ -From 2df74582c930fc05aa5eeed48ed766d74652bf45 Mon Sep 17 00:00:00 2001 +From f9879e5977ca089dae074c63e609a2a5bc734199 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 10 Jan 2021 11:44:29 +0000 -Subject: [PATCH 07/31] UI: Disable wallpaper zoom +Subject: [PATCH 07/34] UI: Disable wallpaper zoom It does little more than inducing motion sickness @@ -11,10 +11,10 @@ Change-Id: I78cc5484930b27f172cd8d8a5bd9042dce3478d0 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml -index 04a69f8c1e6d..15c4a37b76cd 100644 +index 3bc33bac37bc..369eb84ccd84 100644 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml -@@ -5534,7 +5534,7 @@ +@@ -5768,7 +5768,7 @@ 1 diff --git a/patches_platform/frameworks_base/0008-UI-Follow-Monet-and-light-dark-theme-in-user-1-icon.patch b/patches_platform/frameworks_base/0008-UI-Follow-Monet-and-light-dark-theme-in-user-1-icon.patch index 2378e8e..ae45b70 100644 --- a/patches_platform/frameworks_base/0008-UI-Follow-Monet-and-light-dark-theme-in-user-1-icon.patch +++ b/patches_platform/frameworks_base/0008-UI-Follow-Monet-and-light-dark-theme-in-user-1-icon.patch @@ -1,7 +1,7 @@ -From 1f5882a5305f1a5e01ebfcd3cc7fb30faaa69074 Mon Sep 17 00:00:00 2001 +From 2ffb66fa7c00b63536c3de706bd6e36b2b696512 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 25 Sep 2022 02:20:52 +0000 -Subject: [PATCH 08/31] UI: Follow Monet and light/dark theme in user 1 icon +Subject: [PATCH 08/34] UI: Follow Monet and light/dark theme in user 1 icon Change-Id: I755077c6003c39ddc9428da1defe6a6ddd0e5ff8 --- @@ -22,10 +22,10 @@ index d3f998fb70cf..4f7b9e093bb7 100644 #ff4ecde6 #fffbbc04 diff --git a/core/res/res/values/colors.xml b/core/res/res/values/colors.xml -index a6830a6e3793..bbeb4e371018 100644 +index eddd81e78692..00cf4243cfa9 100644 --- a/core/res/res/values/colors.xml +++ b/core/res/res/values/colors.xml -@@ -176,7 +176,7 @@ +@@ -177,7 +177,7 @@ #00000000 diff --git a/patches_platform/frameworks_base/0009-UI-Hide-QS-footer-background.patch b/patches_platform/frameworks_base/0009-UI-Hide-QS-footer-background.patch new file mode 100644 index 0000000..b16f456 --- /dev/null +++ b/patches_platform/frameworks_base/0009-UI-Hide-QS-footer-background.patch @@ -0,0 +1,40 @@ +From 17eb4477f1607ea91917ddce4137d7e337d3037b Mon Sep 17 00:00:00 2001 +From: Andy CrossGate Yan +Date: Thu, 4 Apr 2024 18:19:19 +0800 +Subject: [PATCH 09/34] UI: Hide QS footer background + +Change-Id: I4d83037e9206dec4181f9b0acd302114fa4a98c1 +--- + .../com/android/systemui/qs/footer/ui/compose/FooterActions.kt | 2 +- + packages/SystemUI/res/drawable/qs_footer_actions_background.xml | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt b/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt +index eb71490f049a..8242afefc56b 100644 +--- a/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt ++++ b/packages/SystemUI/compose/features/src/com/android/systemui/qs/footer/ui/compose/FooterActions.kt +@@ -119,7 +119,7 @@ fun FooterActions( + } + } + +- val backgroundColor = colorAttr(R.attr.underSurface) ++ val backgroundColor = colorAttr(android.R.color.transparent) + val contentColor = LocalAndroidColorScheme.current.onSurface + val backgroundTopRadius = dimensionResource(R.dimen.qs_corner_radius) + val backgroundModifier = +diff --git a/packages/SystemUI/res/drawable/qs_footer_actions_background.xml b/packages/SystemUI/res/drawable/qs_footer_actions_background.xml +index a7e8762a2593..6bfa8f75de03 100644 +--- a/packages/SystemUI/res/drawable/qs_footer_actions_background.xml ++++ b/packages/SystemUI/res/drawable/qs_footer_actions_background.xml +@@ -15,7 +15,7 @@ + --> + + +- ++ + + +-- +2.34.1 + diff --git a/patches_platform/frameworks_base/0009-UI-Increase-default-status-bar-height.patch b/patches_platform/frameworks_base/0010-UI-Increase-default-status-bar-height.patch similarity index 88% rename from patches_platform/frameworks_base/0009-UI-Increase-default-status-bar-height.patch rename to patches_platform/frameworks_base/0010-UI-Increase-default-status-bar-height.patch index 23c5447..27220be 100644 --- a/patches_platform/frameworks_base/0009-UI-Increase-default-status-bar-height.patch +++ b/patches_platform/frameworks_base/0010-UI-Increase-default-status-bar-height.patch @@ -1,7 +1,7 @@ -From 0f62a57ac11e78a3595ba7598f151e7fd891e7c1 Mon Sep 17 00:00:00 2001 +From 0e9361f835650e386bb6b797ebb1b6852d40c762 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Wed, 3 Jun 2020 01:31:34 +0000 -Subject: [PATCH 09/31] UI: Increase default status bar height +Subject: [PATCH 10/34] UI: Increase default status bar height Change-Id: Ibbcf63159e19bb2bb2b1094ea07ab85917630b07 --- @@ -9,7 +9,7 @@ Change-Id: Ibbcf63159e19bb2bb2b1094ea07ab85917630b07 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml -index 190b7a62e2e0..32589b542a1d 100644 +index 96c4bf432c05..a086f16c769e 100644 --- a/core/res/res/values/dimens.xml +++ b/core/res/res/values/dimens.xml @@ -41,7 +41,7 @@ diff --git a/patches_platform/frameworks_base/0010-UI-Remove-QS-footer-background.patch b/patches_platform/frameworks_base/0010-UI-Remove-QS-footer-background.patch deleted file mode 100644 index 0075ec4..0000000 --- a/patches_platform/frameworks_base/0010-UI-Remove-QS-footer-background.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 7efb158bc07f7366ff2d2d92752e663e16c9e03d Mon Sep 17 00:00:00 2001 -From: Andy CrossGate Yan -Date: Sun, 25 Sep 2022 02:20:20 +0000 -Subject: [PATCH 10/31] UI: Remove QS footer background - -Change-Id: I68e82e0c5e3eddb2d3f767fe792b1436eae506ef ---- - packages/SystemUI/res-keyguard/layout/footer_actions.xml | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/packages/SystemUI/res-keyguard/layout/footer_actions.xml b/packages/SystemUI/res-keyguard/layout/footer_actions.xml -index 4a2a1cb9dc6d..b7f30d9e4344 100644 ---- a/packages/SystemUI/res-keyguard/layout/footer_actions.xml -+++ b/packages/SystemUI/res-keyguard/layout/footer_actions.xml -@@ -23,7 +23,6 @@ - android:elevation="@dimen/qs_panel_elevation" - android:paddingTop="@dimen/qs_footer_actions_top_padding" - android:paddingBottom="@dimen/qs_footer_actions_bottom_padding" -- android:background="@drawable/qs_footer_actions_background" - android:gravity="center_vertical|end" - android:layout_gravity="bottom" - /> -\ No newline at end of file --- -2.34.1 - diff --git a/patches_platform/frameworks_base/0011-UI-Revive-navbar-layout-tuning-via-sysui_nav_bar-tun.patch b/patches_platform/frameworks_base/0011-UI-Revive-navbar-layout-tuning-via-sysui_nav_bar-tun.patch new file mode 100644 index 0000000..31960ef --- /dev/null +++ b/patches_platform/frameworks_base/0011-UI-Revive-navbar-layout-tuning-via-sysui_nav_bar-tun.patch @@ -0,0 +1,82 @@ +From 635207ed57659f3c89cfa144de981706c569d9c8 Mon Sep 17 00:00:00 2001 +From: Andy CrossGate Yan +Date: Tue, 6 Oct 2020 01:41:16 +0000 +Subject: [PATCH 11/34] UI: Revive navbar layout tuning via sysui_nav_bar + tunable + +Google keeps fixing what ain't broken. + +Change-Id: Ied7d7859e50fd0fcc346219964e747c5d5f4c352 +--- + .../NavigationBarInflaterView.java | 21 +++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java +index 73ca35557133..bbb312c4e56b 100644 +--- a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java ++++ b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java +@@ -135,6 +135,7 @@ public class NavigationBarInflaterView extends FrameLayout { + + private boolean mInverseLayout; + private boolean mIsHintEnabled; ++ private boolean mUsingCustomLayout; + + private final ContentObserver mContentObserver; + +@@ -159,6 +160,9 @@ public class NavigationBarInflaterView extends FrameLayout { + mContext.getMainExecutor().execute(() -> { + onLikelyDefaultLayoutChange(); + }); ++ } else if (Settings.Secure.getUriFor(NAV_BAR_VIEWS).equals(uri)) { ++ setNavigationBarLayout(Settings.Secure.getString(mContext.getContentResolver(), ++ NAV_BAR_VIEWS)); + } + } + }; +@@ -215,12 +219,16 @@ public class NavigationBarInflaterView extends FrameLayout { + Uri navBarInverse = Settings.Secure.getUriFor(NAV_BAR_INVERSE); + Uri navigationBarHint = LineageSettings.System.getUriFor( + LineageSettings.System.NAVIGATION_BAR_HINT); ++ Uri navBarViews = Settings.Secure.getUriFor(NAV_BAR_VIEWS); + mContext.getContentResolver().registerContentObserver(navBarInverse, false, + mContentObserver); + mContext.getContentResolver().registerContentObserver(navigationBarHint, false, + mContentObserver); ++ mContext.getContentResolver().registerContentObserver(navBarViews, false, ++ mContentObserver); + mContentObserver.onChange(true, navBarInverse); + mContentObserver.onChange(true, navigationBarHint); ++ mContentObserver.onChange(true, navBarViews); + } + + @Override +@@ -237,6 +245,9 @@ public class NavigationBarInflaterView extends FrameLayout { + } + + public void onLikelyDefaultLayoutChange() { ++ // Don't override custom layouts ++ if (mUsingCustomLayout) return; ++ + // Reevaluate new layout + final String newValue = getDefaultLayout(); + if (!Objects.equals(mCurrentLayout, newValue)) { +@@ -245,6 +256,16 @@ public class NavigationBarInflaterView extends FrameLayout { + } + } + ++ public void setNavigationBarLayout(String layoutValue) { ++ mContext.getMainExecutor().execute(() -> { ++ if (!Objects.equals(mCurrentLayout, layoutValue)) { ++ mUsingCustomLayout = layoutValue != null; ++ clearViews(); ++ inflateLayout(layoutValue); ++ } ++ }); ++ } ++ + public void setButtonDispatchers(SparseArray buttonDispatchers) { + mButtonDispatchers = buttonDispatchers; + clearDispatcherViews(); +-- +2.34.1 + diff --git a/patches_platform/frameworks_base/0011-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch b/patches_platform/frameworks_base/0012-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch similarity index 95% rename from patches_platform/frameworks_base/0011-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch rename to patches_platform/frameworks_base/0012-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch index e7d313f..5267a34 100644 --- a/patches_platform/frameworks_base/0011-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch +++ b/patches_platform/frameworks_base/0012-UI-Use-SNAP_FIXED_RATIO-for-multi-window-globally.patch @@ -1,7 +1,7 @@ -From 1edb91ecfa56336cc94aa2bd49c1a3e07274447a Mon Sep 17 00:00:00 2001 +From b2ca16f3b497b0f69e125eb9f47f2324d2a2019e Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 26 Apr 2020 08:56:13 +0000 -Subject: [PATCH 11/31] UI: Use SNAP_FIXED_RATIO for multi-window globally +Subject: [PATCH 12/34] UI: Use SNAP_FIXED_RATIO for multi-window globally Enables multiple snap targets under landscape for phone UI @@ -78,10 +78,10 @@ index 34b6a54be493..3921c9edfeac 100644 Only applies if the device display is not square. --> false diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml -index 15c4a37b76cd..43dbb1513f8a 100644 +index 369eb84ccd84..c223ec0d6ed0 100644 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml -@@ -4081,7 +4081,7 @@ +@@ -4203,7 +4203,7 @@ 1 - 3 snap targets: fixed ratio, 1:1, (1 - fixed ratio) 2 - 1 snap target: 1:1 --> diff --git a/patches_platform/frameworks_base/0012-core-Remove-old-app-target-SDK-dialog.patch b/patches_platform/frameworks_base/0013-core-Remove-old-app-target-SDK-dialog.patch similarity index 83% rename from patches_platform/frameworks_base/0012-core-Remove-old-app-target-SDK-dialog.patch rename to patches_platform/frameworks_base/0013-core-Remove-old-app-target-SDK-dialog.patch index 20a362d..5b8f183 100644 --- a/patches_platform/frameworks_base/0012-core-Remove-old-app-target-SDK-dialog.patch +++ b/patches_platform/frameworks_base/0013-core-Remove-old-app-target-SDK-dialog.patch @@ -1,7 +1,7 @@ -From 5dbac2415145bea20ff01debbe03e815bce09334 Mon Sep 17 00:00:00 2001 +From 77275322ff6606110bec9f11bbdc90932ab1fded Mon Sep 17 00:00:00 2001 From: Danny Lin Date: Tue, 3 Nov 2020 22:43:12 -0800 -Subject: [PATCH 12/31] core: Remove old app target SDK dialog +Subject: [PATCH 13/34] core: Remove old app target SDK dialog If an app is old, users should already know that, and there's usually no point in warning them about it because they would already be using a @@ -15,10 +15,10 @@ Change-Id: I1a3021f0f9bec1ab6ff7641776391e1bd4c3cc49 1 file changed, 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/AppWarnings.java b/services/core/java/com/android/server/wm/AppWarnings.java -index 0273a30e157c..d54aadfd6d24 100644 +index ad5f4427fbc4..94ccee7b4771 100644 --- a/services/core/java/com/android/server/wm/AppWarnings.java +++ b/services/core/java/com/android/server/wm/AppWarnings.java -@@ -206,7 +206,6 @@ class AppWarnings { +@@ -210,7 +210,6 @@ class AppWarnings { public void onStartActivity(ActivityRecord r) { showUnsupportedCompileSdkDialogIfNeeded(r); showUnsupportedDisplaySizeDialogIfNeeded(r); diff --git a/patches_platform/frameworks_base/0014-Add-support-for-app-signature-spoofing.patch b/patches_platform/frameworks_base/0014-Add-support-for-app-signature-spoofing.patch deleted file mode 100644 index ffcc2d3..0000000 --- a/patches_platform/frameworks_base/0014-Add-support-for-app-signature-spoofing.patch +++ /dev/null @@ -1,163 +0,0 @@ -From 1001116630f817f53c2b6adbe51499ca6ff6ab4f Mon Sep 17 00:00:00 2001 -From: Danny Lin -Date: Sat, 16 Oct 2021 05:27:57 -0700 -Subject: [PATCH 14/31] Add support for app signature spoofing - -This is needed by microG GmsCore to pretend to be the official Google -Play Services package, because client apps check the package signature -to make sure it matches Google's official certificate. - -This was forward-ported from the Android 10 patch by gudenau: -https://github.com/microg/android_packages_apps_GmsCore/pull/957 - -Changes made for Android 11: - - Updated PackageInfo calls - - Added new permission to public API surface, needed for - PermissionController which is now an updatable APEX on 11 - - Added a dummy permission group to allow users to manage the - permission through the PermissionController UI - (by Vachounet ) - - Updated location provider comment for conciseness - -Changes made for Android 12: - - Moved mayFakeSignature into lock-free Computer subclass - - Always get permissions for packages that request signature spoofing - (otherwise permissions are usually ommitted and thus the permission - check doesn't work properly) - - Optimize mayFakeSignature check order to improve performance - -Changes made for Android 13: - - Computer subclass is now an independent class. - -Change-Id: Ied7d6ce0b83a2d2345c3abba0429998d86494a88 ---- - core/api/current.txt | 2 ++ - core/res/AndroidManifest.xml | 15 ++++++++++ - core/res/res/values/strings.xml | 12 ++++++++ - .../com/android/server/pm/ComputerEngine.java | 30 +++++++++++++++++-- - 4 files changed, 56 insertions(+), 3 deletions(-) - -diff --git a/core/api/current.txt b/core/api/current.txt -index 288ab479c0fb..2124d89c6e6f 100644 ---- a/core/api/current.txt -+++ b/core/api/current.txt -@@ -95,6 +95,7 @@ package android { - field public static final String EXECUTE_APP_ACTION = "android.permission.EXECUTE_APP_ACTION"; - field public static final String EXPAND_STATUS_BAR = "android.permission.EXPAND_STATUS_BAR"; - field public static final String FACTORY_TEST = "android.permission.FACTORY_TEST"; -+ field public static final String FAKE_PACKAGE_SIGNATURE = "android.permission.FAKE_PACKAGE_SIGNATURE"; - field public static final String FOREGROUND_SERVICE = "android.permission.FOREGROUND_SERVICE"; - field public static final String FOREGROUND_SERVICE_CAMERA = "android.permission.FOREGROUND_SERVICE_CAMERA"; - field public static final String FOREGROUND_SERVICE_CONNECTED_DEVICE = "android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"; -@@ -326,6 +327,7 @@ package android { - field public static final String CALL_LOG = "android.permission-group.CALL_LOG"; - field public static final String CAMERA = "android.permission-group.CAMERA"; - field public static final String CONTACTS = "android.permission-group.CONTACTS"; -+ field public static final String FAKE_PACKAGE = "android.permission-group.FAKE_PACKAGE"; - field public static final String LOCATION = "android.permission-group.LOCATION"; - field public static final String MICROPHONE = "android.permission-group.MICROPHONE"; - field public static final String NEARBY_DEVICES = "android.permission-group.NEARBY_DEVICES"; -diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml -index 14cb052b121f..09dc7b293b73 100644 ---- a/core/res/AndroidManifest.xml -+++ b/core/res/AndroidManifest.xml -@@ -4258,6 +4258,21 @@ - android:description="@string/permdesc_getPackageSize" - android:protectionLevel="normal" /> - -+ -+ -+ -+ -+ -+ - -diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml -index 9c018c30f9e3..966fec172070 100644 ---- a/core/res/res/values/strings.xml -+++ b/core/res/res/values/strings.xml -@@ -991,6 +991,18 @@ - - - -+ -+ Spoof package signature -+ -+ Allows the app to pretend to be a different app. Malicious applications might be able to use this to access private application data. Legitimate uses include an emulator pretending to be what it emulates. Grant this permission with caution only! -+ -+ Spoof package signature -+ -+ allow to spoof package signature -+ -+ Allow -+ <b>%1$s</b> to spoof package signature? -+ - - disable or modify status bar - -diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java -index 78f1fa60b69f..fb2f7da97cda 100644 ---- a/services/core/java/com/android/server/pm/ComputerEngine.java -+++ b/services/core/java/com/android/server/pm/ComputerEngine.java -@@ -1450,6 +1450,29 @@ public class ComputerEngine implements Computer { - return result; - } - -+ private boolean requestsFakeSignature(AndroidPackage p) { -+ return p.getMetaData() != null && -+ p.getMetaData().getString("fake-signature") != null; -+ } -+ -+ private PackageInfo mayFakeSignature(AndroidPackage p, PackageInfo pi, -+ Set permissions) { -+ try { -+ if (p.getMetaData() != null && -+ p.getTargetSdkVersion() > Build.VERSION_CODES.LOLLIPOP_MR1) { -+ String sig = p.getMetaData().getString("fake-signature"); -+ if (sig != null && -+ permissions.contains("android.permission.FAKE_PACKAGE_SIGNATURE")) { -+ pi.signatures = new Signature[] {new Signature(sig)}; -+ } -+ } -+ } catch (Throwable t) { -+ // We should never die because of any failures, this is system code! -+ Log.w("PackageManagerService.FAKE_PACKAGE_SIGNATURE", t); -+ } -+ return pi; -+ } -+ - public final PackageInfo generatePackageInfo(PackageStateInternal ps, - @PackageManager.PackageInfoFlagsBits long flags, int userId) { - if (!mUserManager.exists(userId)) return null; -@@ -1483,13 +1506,14 @@ public class ComputerEngine implements Computer { - || ArrayUtils.isEmpty(p.getPermissions())) ? Collections.emptySet() - : mPermissionManager.getInstalledPermissions(ps.getPackageName()); - // Compute granted permissions only if package has requested permissions -- final Set grantedPermissions = ((flags & PackageManager.GET_PERMISSIONS) == 0 -+ final Set grantedPermissions = (((flags & PackageManager.GET_PERMISSIONS) == 0 -+ && !requestsFakeSignature(p)) - || ArrayUtils.isEmpty(p.getRequestedPermissions())) ? Collections.emptySet() - : mPermissionManager.getGrantedPermissions(ps.getPackageName(), userId); - -- PackageInfo packageInfo = PackageInfoUtils.generate(p, gids, flags, -+ PackageInfo packageInfo = mayFakeSignature(p, PackageInfoUtils.generate(p, gids, flags, - state.getFirstInstallTimeMillis(), ps.getLastUpdateTime(), installedPermissions, -- grantedPermissions, state, userId, ps); -+ grantedPermissions, state, userId, ps), grantedPermissions); - - if (packageInfo == null) { - return null; --- -2.34.1 - diff --git a/patches_platform/frameworks_base/0013-Paint-Enable-subpixel-text-positioning-by-default.patch b/patches_platform/frameworks_base/0014-Paint-Enable-subpixel-text-positioning-by-default.patch similarity index 88% rename from patches_platform/frameworks_base/0013-Paint-Enable-subpixel-text-positioning-by-default.patch rename to patches_platform/frameworks_base/0014-Paint-Enable-subpixel-text-positioning-by-default.patch index f8ff41a..8d3edc5 100644 --- a/patches_platform/frameworks_base/0013-Paint-Enable-subpixel-text-positioning-by-default.patch +++ b/patches_platform/frameworks_base/0014-Paint-Enable-subpixel-text-positioning-by-default.patch @@ -1,7 +1,7 @@ -From 11a651e734f3b32ca60f6a17d7b8a1f11cca5800 Mon Sep 17 00:00:00 2001 +From 4639be840945f29ba14ed58de8c2f538e2f487fb Mon Sep 17 00:00:00 2001 From: Danny Lin Date: Tue, 5 Oct 2021 21:01:50 -0700 -Subject: [PATCH 13/31] Paint: Enable subpixel text positioning by default +Subject: [PATCH 14/34] Paint: Enable subpixel text positioning by default On desktop Linux, subpixel text positioning is necessary to avoid kerning issues, and Android is no different. Even though most phone @@ -24,10 +24,10 @@ Change-Id: I8d71e5848a745c5a2d457a28c68458920928ee09 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/graphics/java/android/graphics/Paint.java b/graphics/java/android/graphics/Paint.java -index d35dcab11f49..e4e814a1c941 100644 +index f10cdb82022e..a083c723f9c3 100644 --- a/graphics/java/android/graphics/Paint.java +++ b/graphics/java/android/graphics/Paint.java -@@ -260,7 +260,7 @@ public class Paint { +@@ -266,7 +266,7 @@ public class Paint { // These flags are always set on a new/reset paint, even if flags 0 is passed. static final int HIDDEN_DEFAULT_PAINT_FLAGS = DEV_KERN_TEXT_FLAG | EMBEDDED_BITMAP_TEXT_FLAG diff --git a/patches_platform/frameworks_base/0015-Remove-debuggable-requirement-for-signature-spoofing.patch b/patches_platform/frameworks_base/0015-Remove-debuggable-requirement-for-signature-spoofing.patch new file mode 100644 index 0000000..df57460 --- /dev/null +++ b/patches_platform/frameworks_base/0015-Remove-debuggable-requirement-for-signature-spoofing.patch @@ -0,0 +1,28 @@ +From 33ea20cb105c85d2c7bc0bab20c5d87ecf2d3df6 Mon Sep 17 00:00:00 2001 +From: Andy CrossGate Yan +Date: Sun, 17 Mar 2024 17:10:38 +0800 +Subject: [PATCH 15/34] Remove debuggable requirement for signature spoofing + +Change-Id: I8d637ddbbd117a9c5b1d9c5e462b0f4b30d98333 +--- + services/core/java/com/android/server/pm/ComputerEngine.java | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java +index d8cbe9d5e7c7..13af78f56462 100644 +--- a/services/core/java/com/android/server/pm/ComputerEngine.java ++++ b/services/core/java/com/android/server/pm/ComputerEngine.java +@@ -1472,10 +1472,6 @@ public class ComputerEngine implements Computer { + private static native boolean isDebuggable(); + + public static boolean isMicrogSigned(AndroidPackage p) { +- if (!isDebuggable()) { +- return false; +- } +- + // Allowlist the following apps: + // * com.android.vending - microG Companion + // * com.google.android.gms - microG Services +-- +2.34.1 + diff --git a/patches_platform/frameworks_base/0016-Revert-Update-SystemUI-to-new-notification-color-spe.patch b/patches_platform/frameworks_base/0016-Revert-Update-SystemUI-to-new-notification-color-spe.patch new file mode 100644 index 0000000..37333ce --- /dev/null +++ b/patches_platform/frameworks_base/0016-Revert-Update-SystemUI-to-new-notification-color-spe.patch @@ -0,0 +1,879 @@ +From c650743c1e67f48640774af517a2ce77f04e1141 Mon Sep 17 00:00:00 2001 +From: Andy CrossGate Yan +Date: Thu, 4 Apr 2024 18:26:02 +0800 +Subject: [PATCH 16/34] Revert "Update SystemUI to new notification color spec" + +This reverts commit db2c5554ac653567d1433d3ff99328c5d855c233. + +Change-Id: Iddbe46f4d01d05d6579c1e8b9dab266dd605e199 +--- + ...ication_guts_priority_button_bg_stroke.xml | 5 ++-- + .../notification_guts_priority_contents.xml | 5 ++-- + .../SystemUI/res/color/remote_input_hint.xml | 5 ++-- + .../SystemUI/res/color/remote_input_send.xml | 7 ++--- + .../SystemUI/res/color/remote_input_text.xml | 7 ++--- + .../drawable/notif_footer_btn_background.xml | 2 +- + .../res/drawable/notification_guts_bg.xml | 2 +- + .../res/drawable/notification_material_bg.xml | 2 +- + .../drawable/remote_input_view_text_bg.xml | 5 ++-- + ..._notification_section_header_clear_btn.xml | 3 +- + .../SystemUI/res/layout/notif_half_shelf.xml | 3 +- + .../res/layout/notif_half_shelf_row.xml | 5 ++-- + .../layout/notification_children_divider.xml | 3 +- + .../layout/notification_conversation_info.xml | 3 +- + .../SystemUI/res/layout/notification_info.xml | 5 ++-- + .../res/layout/notification_snooze.xml | 4 +-- + .../res/layout/notification_snooze_option.xml | 3 +- + .../layout/status_bar_notification_footer.xml | 6 ++-- + ...status_bar_notification_section_header.xml | 2 +- + packages/SystemUI/res/values-night/colors.xml | 2 +- + packages/SystemUI/res/values/colors.xml | 2 +- + packages/SystemUI/res/values/styles.xml | 30 ++++--------------- + .../systemui/statusbar/EmptyShadeView.java | 8 ++--- + .../footer/ui/view/FooterView.java | 29 +++++++++--------- + .../row/ActivatableNotificationView.java | 2 +- + .../row/HybridNotificationView.java | 5 ++-- + .../row/NotificationConversationInfo.java | 9 +++--- + .../row/wrapper/NotificationViewWrapper.java | 3 +- + .../stack/NotificationChildrenContainer.java | 2 +- + .../stack/NotificationSectionsManager.kt | 8 ++--- + .../stack/NotificationStackScrollLayout.java | 25 +++++++--------- + .../notification/stack/SectionHeaderView.java | 6 ++-- + .../statusbar/phone/ScrimController.java | 5 ++-- + .../statusbar/phone/TapAgainView.java | 7 ++--- + .../statusbar/policy/RemoteInputView.java | 15 +++++----- + .../row/ActivatableNotificationViewTest.kt | 5 ++-- + 36 files changed, 101 insertions(+), 139 deletions(-) + +diff --git a/packages/SystemUI/res/color/notification_guts_priority_button_bg_stroke.xml b/packages/SystemUI/res/color/notification_guts_priority_button_bg_stroke.xml +index d1b8a064724d..015e9f99212d 100644 +--- a/packages/SystemUI/res/color/notification_guts_priority_button_bg_stroke.xml ++++ b/packages/SystemUI/res/color/notification_guts_priority_button_bg_stroke.xml +@@ -14,9 +14,8 @@ + ~ limitations under the License + --> + +- ++ + ++ android:color="?android:attr/colorAccent" /> + + +diff --git a/packages/SystemUI/res/color/notification_guts_priority_contents.xml b/packages/SystemUI/res/color/notification_guts_priority_contents.xml +index cc8c25a2d1ec..42f01896d7a1 100644 +--- a/packages/SystemUI/res/color/notification_guts_priority_contents.xml ++++ b/packages/SystemUI/res/color/notification_guts_priority_contents.xml +@@ -14,9 +14,8 @@ + ~ limitations under the License. + --> + +- ++ + ++ android:color="?android:attr/colorAccent" /> + + +diff --git a/packages/SystemUI/res/color/remote_input_hint.xml b/packages/SystemUI/res/color/remote_input_hint.xml +index 0d90ee6b47c6..7fe58dbcf822 100644 +--- a/packages/SystemUI/res/color/remote_input_hint.xml ++++ b/packages/SystemUI/res/color/remote_input_hint.xml +@@ -14,7 +14,6 @@ + ~ limitations under the License. + --> + +- +- ++ ++ + +\ No newline at end of file +diff --git a/packages/SystemUI/res/color/remote_input_send.xml b/packages/SystemUI/res/color/remote_input_send.xml +index 0acc66b9050f..4dcd3dd229fb 100644 +--- a/packages/SystemUI/res/color/remote_input_send.xml ++++ b/packages/SystemUI/res/color/remote_input_send.xml +@@ -15,8 +15,7 @@ + ~ limitations under the License + --> + +- +- +- ++ ++ ++ + +\ No newline at end of file +diff --git a/packages/SystemUI/res/color/remote_input_text.xml b/packages/SystemUI/res/color/remote_input_text.xml +index bf2c198fe540..13bb1d7cbe7d 100644 +--- a/packages/SystemUI/res/color/remote_input_text.xml ++++ b/packages/SystemUI/res/color/remote_input_text.xml +@@ -15,8 +15,7 @@ + ~ limitations under the License + --> + +- +- +- ++ ++ ++ + +\ No newline at end of file +diff --git a/packages/SystemUI/res/drawable/notif_footer_btn_background.xml b/packages/SystemUI/res/drawable/notif_footer_btn_background.xml +index b9597375c3df..e6266754c0af 100644 +--- a/packages/SystemUI/res/drawable/notif_footer_btn_background.xml ++++ b/packages/SystemUI/res/drawable/notif_footer_btn_background.xml +@@ -26,7 +26,7 @@ + +- ++ + + + +diff --git a/packages/SystemUI/res/drawable/notification_guts_bg.xml b/packages/SystemUI/res/drawable/notification_guts_bg.xml +index 84e2231738d4..bd9394bf9f8a 100644 +--- a/packages/SystemUI/res/drawable/notification_guts_bg.xml ++++ b/packages/SystemUI/res/drawable/notification_guts_bg.xml +@@ -17,7 +17,7 @@ + + +- ++ + + + +diff --git a/packages/SystemUI/res/drawable/notification_material_bg.xml b/packages/SystemUI/res/drawable/notification_material_bg.xml +index 355e75d0716b..3eaa6180ba1b 100644 +--- a/packages/SystemUI/res/drawable/notification_material_bg.xml ++++ b/packages/SystemUI/res/drawable/notification_material_bg.xml +@@ -20,7 +20,7 @@ + android:color="?android:attr/colorControlHighlight"> + + +- ++ + + + +diff --git a/packages/SystemUI/res/drawable/remote_input_view_text_bg.xml b/packages/SystemUI/res/drawable/remote_input_view_text_bg.xml +index 45d1a530cd20..535b35497b5c 100644 +--- a/packages/SystemUI/res/drawable/remote_input_view_text_bg.xml ++++ b/packages/SystemUI/res/drawable/remote_input_view_text_bg.xml +@@ -14,13 +14,12 @@ + ~ limitations under the License. + --> + + +- ++ + ++ android:color="?android:attr/colorAccent"/> + + + + +diff --git a/packages/SystemUI/res/layout/notif_half_shelf.xml b/packages/SystemUI/res/layout/notif_half_shelf.xml +index 68c8dd96d188..c70f8e2b1c07 100644 +--- a/packages/SystemUI/res/layout/notif_half_shelf.xml ++++ b/packages/SystemUI/res/layout/notif_half_shelf.xml +@@ -16,7 +16,6 @@ + + +diff --git a/packages/SystemUI/res/layout/notif_half_shelf_row.xml b/packages/SystemUI/res/layout/notif_half_shelf_row.xml +index 9ef342ce5220..190f9994b1dc 100644 +--- a/packages/SystemUI/res/layout/notif_half_shelf_row.xml ++++ b/packages/SystemUI/res/layout/notif_half_shelf_row.xml +@@ -16,7 +16,6 @@ + + + +@@ -75,7 +74,7 @@ + android:maxLines="1" + android:layout_below="@id/channel_name" + android:fontFamily="@*android:string/config_bodyFontFamily" +- android:textColor="?androidprv:attr/materialColorOnSurfaceVariant" ++ android:textColor="?android:attr/textColorSecondary" + android:textSize="14sp" + /> + +diff --git a/packages/SystemUI/res/layout/notification_children_divider.xml b/packages/SystemUI/res/layout/notification_children_divider.xml +index 13e24a9ea277..eb743067933d 100644 +--- a/packages/SystemUI/res/layout/notification_children_divider.xml ++++ b/packages/SystemUI/res/layout/notification_children_divider.xml +@@ -17,8 +17,7 @@ + + ++ android:background="@color/notification_divider_color" /> +diff --git a/packages/SystemUI/res/layout/notification_conversation_info.xml b/packages/SystemUI/res/layout/notification_conversation_info.xml +index 3a752c81b95a..4f6e88c2266f 100644 +--- a/packages/SystemUI/res/layout/notification_conversation_info.xml ++++ b/packages/SystemUI/res/layout/notification_conversation_info.xml +@@ -17,7 +17,6 @@ + + + + +diff --git a/packages/SystemUI/res/layout/notification_info.xml b/packages/SystemUI/res/layout/notification_info.xml +index 19a3f2fd521c..852db1b8fb91 100644 +--- a/packages/SystemUI/res/layout/notification_info.xml ++++ b/packages/SystemUI/res/layout/notification_info.xml +@@ -17,7 +17,6 @@ + + + android:contentDescription="@string/notification_app_settings" + android:src="@drawable/ic_info" + android:layout_toStartOf="@id/info" +- android:tint="?androidprv:attr/materialColorPrimary"/> ++ android:tint="@color/notification_guts_link_icon_tint"/> + + android:contentDescription="@string/notification_more_settings" + android:background="@drawable/ripple_drawable_20dp" + android:src="@drawable/ic_settings" +- android:tint="?androidprv:attr/materialColorPrimary" ++ android:tint="?android:attr/colorAccent" + android:layout_alignParentEnd="true" /> + + +diff --git a/packages/SystemUI/res/layout/notification_snooze.xml b/packages/SystemUI/res/layout/notification_snooze.xml +index 6e541a7a5f32..8b5368098c00 100644 +--- a/packages/SystemUI/res/layout/notification_snooze.xml ++++ b/packages/SystemUI/res/layout/notification_snooze.xml +@@ -23,7 +23,7 @@ + android:orientation="vertical" + android:paddingTop="2dp" + android:paddingBottom="2dp" +- android:background="?androidprv:attr/materialColorSurfaceContainerHigh" ++ android:background="?androidprv:attr/colorSurface" + android:theme="@style/Theme.SystemUI"> + + + + + +\ No newline at end of file ++ android:textColor="?android:attr/textColorSecondary"/> +\ No newline at end of file +diff --git a/packages/SystemUI/res/layout/status_bar_notification_footer.xml b/packages/SystemUI/res/layout/status_bar_notification_footer.xml +index 72424a13d0f1..c1bac3151049 100644 +--- a/packages/SystemUI/res/layout/status_bar_notification_footer.xml ++++ b/packages/SystemUI/res/layout/status_bar_notification_footer.xml +@@ -41,7 +41,7 @@ + android:layout_height="wrap_content" + > + + +diff --git a/packages/SystemUI/res/layout/status_bar_notification_section_header.xml b/packages/SystemUI/res/layout/status_bar_notification_section_header.xml +index 53abe87e7c12..c4d8d55f74e2 100644 +--- a/packages/SystemUI/res/layout/status_bar_notification_section_header.xml ++++ b/packages/SystemUI/res/layout/status_bar_notification_section_header.xml +@@ -40,7 +40,7 @@ + android:layout_weight="1"> + + + @*android:color/notification_primary_text_color_dark + +- @android:color/system_on_surface_dark ++ @color/material_dynamic_neutral95 + + @color/GM2_grey_500 + @color/GM2_grey_300 +diff --git a/packages/SystemUI/res/values/colors.xml b/packages/SystemUI/res/values/colors.xml +index 34dcd655b8e7..91a72922fd0a 100644 +--- a/packages/SystemUI/res/values/colors.xml ++++ b/packages/SystemUI/res/values/colors.xml +@@ -116,7 +116,7 @@ + + #99000000 + +- @android:color/system_on_surface_light ++ @color/material_dynamic_neutral10 + + + #fff44336 +diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml +index e3d4419afceb..7852608df57d 100644 +--- a/packages/SystemUI/res/values/styles.xml ++++ b/packages/SystemUI/res/values/styles.xml +@@ -602,34 +602,34 @@ + + + + + + + + + + +@@ -640,28 +640,10 @@ + center + + +- +- + +- +- diff --git a/patches_platform/frameworks_base/0016-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch b/patches_platform/frameworks_base/0019-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch similarity index 91% rename from patches_platform/frameworks_base/0016-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch rename to patches_platform/frameworks_base/0019-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch index a55e69b..873dfac 100644 --- a/patches_platform/frameworks_base/0016-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch +++ b/patches_platform/frameworks_base/0019-Revert-Do-not-re-inflate-QS-and-SB-when-CONFIG_UI_MO.patch @@ -1,7 +1,7 @@ -From 7a570109ab3deea49d6c77e2fd731629e4edabb2 Mon Sep 17 00:00:00 2001 +From 2ae2df9278711f93390bede651b69a56099af35b Mon Sep 17 00:00:00 2001 From: Danny Lin Date: Wed, 6 Oct 2021 18:41:11 -0700 -Subject: [PATCH 16/31] Revert "Do not re-inflate QS and SB when +Subject: [PATCH 19/34] Revert "Do not re-inflate QS and SB when CONFIG_UI_MODE" This reverts commit 8a40ff855b86bc86e23367017002289920855a4e. diff --git a/patches_platform/frameworks_base/0017-SystemUI-Follow-light-dark-theme-in-quick-settings.patch b/patches_platform/frameworks_base/0020-SystemUI-Follow-light-dark-theme-in-quick-settings.patch similarity index 96% rename from patches_platform/frameworks_base/0017-SystemUI-Follow-light-dark-theme-in-quick-settings.patch rename to patches_platform/frameworks_base/0020-SystemUI-Follow-light-dark-theme-in-quick-settings.patch index fd5d297..c959ab6 100644 --- a/patches_platform/frameworks_base/0017-SystemUI-Follow-light-dark-theme-in-quick-settings.patch +++ b/patches_platform/frameworks_base/0020-SystemUI-Follow-light-dark-theme-in-quick-settings.patch @@ -1,7 +1,7 @@ -From 48c44b93881a1d839f9906c666a8f40e110bab93 Mon Sep 17 00:00:00 2001 +From 5f65456d8135c74d48cd0528fdf7005e235ffd43 Mon Sep 17 00:00:00 2001 From: Danny Lin Date: Mon, 11 Oct 2021 19:24:58 -0700 -Subject: [PATCH 17/31] SystemUI: Follow light/dark theme in quick settings +Subject: [PATCH 20/34] SystemUI: Follow light/dark theme in quick settings Android 12's dual-tone style where the quick settings panel is always dark makes the light theme look like a second-class citizen. Pure black @@ -86,10 +86,10 @@ index b6971d3c1fa4..8972df2b7490 100644 -@@ -634,7 +634,7 @@ +@@ -663,7 +663,7 @@ diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java -index b54a500c5..fb1b30aa7 100644 +index 709835ebc..621b39132 100644 --- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java +++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java @@ -223,7 +223,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider { @@ -540,7 +540,7 @@ index c3739bac8..5b931a46d 100644 return (String) DateFormat.format(pattern, time); } diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java -index bf53584e4..7a0e3ae0b 100644 +index 2a1f2770f..eaf796659 100644 --- a/src/com/android/deskclock/ClockFragment.java +++ b/src/com/android/deskclock/ClockFragment.java @@ -123,7 +123,6 @@ public final class ClockFragment extends DeskClockFragment { diff --git a/patches_platform_personal/packages_apps_DeskClock/0004-DeskClock-Wallpaper-based-text-coloring-for-digital-.patch b/patches_platform_personal/packages_apps_DeskClock/0004-DeskClock-Wallpaper-based-text-coloring-for-digital-.patch index 1b116ae..958f663 100644 --- a/patches_platform_personal/packages_apps_DeskClock/0004-DeskClock-Wallpaper-based-text-coloring-for-digital-.patch +++ b/patches_platform_personal/packages_apps_DeskClock/0004-DeskClock-Wallpaper-based-text-coloring-for-digital-.patch @@ -1,4 +1,4 @@ -From 13cd5543d2d0a253c86fa84030bb3dfb636ceea1 Mon Sep 17 00:00:00 2001 +From 8183a51d8cac2772c1e8d17a264218a4fa0a0287 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Thu, 20 Jan 2022 04:42:03 +0000 Subject: [PATCH 4/4] DeskClock: Wallpaper-based text coloring for digital @@ -12,7 +12,7 @@ Change-Id: Ie22c4980526575f73ebb4e56780d4c2193cc45d3 1 file changed, 57 insertions(+) diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java -index fb1b30aa7..c04528240 100644 +index 621b39132..1031a65b2 100644 --- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java +++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java @@ -38,6 +38,8 @@ import static java.lang.Math.round; diff --git a/patches_platform_personal/packages_apps_Nfc/0001-NfcService-Disable-NFC-by-default.patch b/patches_platform_personal/packages_apps_Nfc/0001-NfcService-Disable-NFC-by-default.patch index 307e8b2..7c0a649 100644 --- a/patches_platform_personal/packages_apps_Nfc/0001-NfcService-Disable-NFC-by-default.patch +++ b/patches_platform_personal/packages_apps_Nfc/0001-NfcService-Disable-NFC-by-default.patch @@ -1,4 +1,4 @@ -From 61630e83287a097f512b03203722f7385100bd5f Mon Sep 17 00:00:00 2001 +From ed635e14cc220e49b736c8071f368201931dd4b0 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Sat, 6 Jun 2015 10:40:51 -0400 Subject: [PATCH] NfcService: Disable NFC by default @@ -9,18 +9,18 @@ Change-Id: Ibe6abec7fa84c6fde476b8a083f57a3f61b50909 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/android/nfc/NfcService.java b/src/com/android/nfc/NfcService.java -index f22dc9da..28aedc59 100644 +index f74e78ab..a4654977 100644 --- a/src/com/android/nfc/NfcService.java +++ b/src/com/android/nfc/NfcService.java -@@ -141,7 +141,7 @@ public class NfcService implements DeviceHostListener, ForegroundUtils.Callback +@@ -144,7 +144,7 @@ public class NfcService implements DeviceHostListener, ForegroundUtils.Callback public static final String PREF_TAG_APP_LIST = "TagIntentAppPreferenceListPrefs"; static final String PREF_NFC_ON = "nfc_on"; - static final boolean NFC_ON_DEFAULT = true; + static final boolean NFC_ON_DEFAULT = false; - static final String PREF_SECURE_NFC_ON = "secure_nfc_on"; - static final boolean SECURE_NFC_ON_DEFAULT = false; - static final String PREF_FIRST_BOOT = "first_boot"; + + static final String PREF_NFC_READER_OPTION_ON = "nfc_reader_on"; + static final boolean NFC_READER_OPTION_DEFAULT = true; -- 2.34.1 diff --git a/patches_platform_personal/packages_apps_Settings/0001-Keyguard-Default-to-small-clock-2-3.patch b/patches_platform_personal/packages_apps_Settings/0001-Keyguard-Default-to-small-clock-2-3.patch deleted file mode 100644 index f281001..0000000 --- a/patches_platform_personal/packages_apps_Settings/0001-Keyguard-Default-to-small-clock-2-3.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 4dad46e31da483f2b0818e81791cac4a4a674385 Mon Sep 17 00:00:00 2001 -From: Andy CrossGate Yan -Date: Mon, 20 Nov 2023 10:42:58 +0800 -Subject: [PATCH] Keyguard: Default to small clock (2/3) - -Change-Id: Ieb39c323e99fd2795f683a8a2930bb3a27212a6d ---- - .../settings/display/LockscreenClockPreferenceController.java | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/com/android/settings/display/LockscreenClockPreferenceController.java b/src/com/android/settings/display/LockscreenClockPreferenceController.java -index 70ae55eaf9..fd6e0fe248 100644 ---- a/src/com/android/settings/display/LockscreenClockPreferenceController.java -+++ b/src/com/android/settings/display/LockscreenClockPreferenceController.java -@@ -37,7 +37,7 @@ public class LockscreenClockPreferenceController extends TogglePreferenceControl - - @Override - public boolean isChecked() { -- return Settings.Secure.getInt(mContext.getContentResolver(), SETTING_KEY, 1) != 0; -+ return Settings.Secure.getInt(mContext.getContentResolver(), SETTING_KEY, 0) != 0; - } - - @Override --- -2.34.1 - diff --git a/patches_platform_personal/packages_apps_SetupWizard/0001-SetupWizard-Least-Action-s-Principle.patch b/patches_platform_personal/packages_apps_SetupWizard/0001-SetupWizard-Least-Action-s-Principle.patch index a10d283..9b6d3c2 100644 --- a/patches_platform_personal/packages_apps_SetupWizard/0001-SetupWizard-Least-Action-s-Principle.patch +++ b/patches_platform_personal/packages_apps_SetupWizard/0001-SetupWizard-Least-Action-s-Principle.patch @@ -1,163 +1,187 @@ -From 7f78c8c7ea3b7aad4c234338263ed88eef8485e7 Mon Sep 17 00:00:00 2001 +From 81689aaba1afbba29c980f60b51c04da97c3d2a1 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Thu, 23 Nov 2023 23:21:58 +0800 Subject: [PATCH] SetupWizard: Least Action(s) Principle Change-Id: I892634b8ffc7beafa5a223de0afdc64276efd2f5 --- - res/raw/lineage_wizard_script.xml | 43 +------------------ - .../lineage_wizard_script_managed_profile.xml | 15 +------ - res/raw/lineage_wizard_script_user.xml | 27 +----------- - 3 files changed, 5 insertions(+), 80 deletions(-) + res/raw/lineage_wizard_script.xml | 62 +------------------ + .../lineage_wizard_script_managed_profile.xml | 21 +------ + res/raw/lineage_wizard_script_user.xml | 38 +----------- + 3 files changed, 3 insertions(+), 118 deletions(-) diff --git a/res/raw/lineage_wizard_script.xml b/res/raw/lineage_wizard_script.xml -index 616f6ed..e7c9b7f 100644 +index ea342b6..43bb23f 100644 --- a/res/raw/lineage_wizard_script.xml +++ b/res/raw/lineage_wizard_script.xml -@@ -18,21 +18,13 @@ +@@ -5,13 +5,7 @@ + SPDX-License-Identifier: Apache-2.0 --> - - -- +- - - + wizard:firstAction="welcome"> - - - - - + - - - -- +- -@@ -41,44 +33,13 @@ - - - +@@ -40,54 +28,6 @@ + +- +- +- +- - - - -- +- - - - -- +- - - - -- +- - - - -- +- - - - -- +- - - - -- -- -- -- -- +- - - - -- +- - - - -+ - - - diff --git a/res/raw/lineage_wizard_script_managed_profile.xml b/res/raw/lineage_wizard_script_managed_profile.xml -index 00a66e3..4f8b867 100644 +index 6a4d1e5..47e99c5 100644 --- a/res/raw/lineage_wizard_script_managed_profile.xml +++ b/res/raw/lineage_wizard_script_managed_profile.xml -@@ -2,7 +2,6 @@ - +@@ -1,30 +1,11 @@ + - +- wizard:firstAction="welcome"> - -- -- -- -- -- +- - - - -- -- -- -+ wizard:firstAction="finish"> - - - -diff --git a/res/raw/lineage_wizard_script_user.xml b/res/raw/lineage_wizard_script_user.xml -index d480901..4f8b867 100644 ---- a/res/raw/lineage_wizard_script_user.xml -+++ b/res/raw/lineage_wizard_script_user.xml -@@ -17,35 +17,12 @@ - --> - - -- -- +- - - - -- +- +- +- ++ wizard:firstAction="finish"> + + + +- +- +- +- +- +- +- +- +- +- - - - -- +- - - - -- -- -- -- -- +- - - - -- +- - - -+ wizard:firstAction="finish"> ++ wizard:firstAction="finish"> - - - -+ - - - + Date: Thu, 28 Oct 2021 02:30:59 +0000 Subject: [PATCH 1/3] Trebuchet: Make overview scrim transparent again @@ -23,7 +23,7 @@ Change-Id: I78c84865eb06b8e59c9c271cd2e267ae4cd7cc08 delete mode 100644 res/color-v33/overview_scrim_dark.xml diff --git a/quickstep/res/values/styles.xml b/quickstep/res/values/styles.xml -index fc0370421d..61ca1e05d6 100644 +index bdc86b217d..7c47d126a8 100644 --- a/quickstep/res/values/styles.xml +++ b/quickstep/res/values/styles.xml @@ -227,7 +227,7 @@ @@ -36,10 +36,10 @@ index fc0370421d..61ca1e05d6 100644 false diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java -index 23fcbea42f..9b151394fa 100644 +index 08ec0398a7..e1ab7311dd 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java -@@ -793,7 +793,7 @@ public abstract class RecentsView Date: Fri, 18 Mar 2022 08:42:18 +0000 Subject: [PATCH 2/3] Trebuchet: Kill haptics in recents @@ -13,10 +13,10 @@ Change-Id: Ie3b0eabe8cc0421e696720740edc492cae2f5153 3 files changed, 1 insertion(+), 32 deletions(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java -index 6f421eb14a..655797da62 100644 +index 968faf07c7..bb93664b46 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java -@@ -438,14 +438,7 @@ public class NoButtonQuickSwitchTouchController implements TouchController, +@@ -437,14 +437,7 @@ public class NoButtonQuickSwitchTouchController implements TouchController, nonOverviewAnim.setFloatValues(startProgress, endProgress); mNonOverviewAnim.dispatchOnStart(); } @@ -33,10 +33,10 @@ index 6f421eb14a..655797da62 100644 } diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java -index 3d94857848..849b9fd2d1 100644 +index 19bfe069c8..f6cb2c7024 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java -@@ -369,11 +369,6 @@ public abstract class TaskViewTouchController +@@ -370,11 +370,6 @@ public abstract class TaskViewTouchController mCurrentAnimation.startWithVelocity(mActivity, goingToEnd, velocity * orientationHandler.getSecondaryTranslationDirectionFactor(), mEndDisplacement, animationDuration); @@ -49,10 +49,10 @@ index 3d94857848..849b9fd2d1 100644 private void clearState() { diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java -index 9b151394fa..0ce5537d2e 100644 +index e1ab7311dd..c2f848c71a 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java -@@ -1558,25 +1558,6 @@ public abstract class RecentsView Date: Mon, 20 Nov 2023 14:09:32 +0800 Subject: [PATCH 3/3] Trebuchet: Kill inverted rounded corners above the @@ -12,23 +12,23 @@ Change-Id: Ibf03a84cb8f3866b5151b02fe8a0e74167cf90ce 1 file changed, 7 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt -index d237c1f997..d7142eef59 100644 +index d6016f1304..c77fadb9aa 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt -@@ -131,13 +131,6 @@ class TaskbarBackgroundRenderer(context: TaskbarActivityContext) { - canvas.translate(0f, canvas.height - backgroundHeight - bottomMargin) +@@ -159,13 +159,6 @@ class TaskbarBackgroundRenderer(private val context: TaskbarActivityContext) { // Draw the background behind taskbar content. - canvas.drawRect(0f, 0f, canvas.width.toFloat(), backgroundHeight, paint) + canvas.drawRect(0f, 0f, canvas.width.toFloat(), persistentTaskbarHeight, paint) + } - -- // Draw the inverted rounded corners above the taskbar. -- canvas.translate(0f, -leftCornerRadius) -- canvas.drawPath(invertedLeftCornerPath, paint) -- canvas.translate(0f, leftCornerRadius) -- canvas.translate(canvas.width - rightCornerRadius, -rightCornerRadius) -- canvas.drawPath(invertedRightCornerPath, paint) - } else if (!isInSetup) { - // backgroundHeight is a value from [0...maxBackgroundHeight], so we can use it as a - // proxy to figure out the animation progress of the stash/unstash animation. +- // Draw the inverted rounded corners above the taskbar. +- canvas.translate(0f, -leftCornerRadius) +- canvas.drawPath(invertedLeftCornerPath, paint) +- canvas.translate(0f, leftCornerRadius) +- canvas.translate(canvas.width - rightCornerRadius, -rightCornerRadius) +- canvas.drawPath(invertedRightCornerPath, paint) + } + + private fun drawTransientBackground(canvas: Canvas) { -- 2.34.1 diff --git a/patches_platform_personal/vendor_lineage/0001-build-Integrate-prop-modifications-2-2.patch b/patches_platform_personal/vendor_lineage/0001-build-Integrate-prop-modifications-2-2.patch index daf0271..55ac802 100644 --- a/patches_platform_personal/vendor_lineage/0001-build-Integrate-prop-modifications-2-2.patch +++ b/patches_platform_personal/vendor_lineage/0001-build-Integrate-prop-modifications-2-2.patch @@ -1,4 +1,4 @@ -From 863e8f70e3a4f987938ff4ad01c22822bc38e409 Mon Sep 17 00:00:00 2001 +From 0af40237062fa2e1177bfb69f7aedc919c8c70a4 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 20 Jun 2021 09:09:15 +0000 Subject: [PATCH 1/4] build: Integrate prop modifications (2/2) diff --git a/patches_platform_personal/vendor_lineage/0002-build-Remove-Stk-2-2.patch b/patches_platform_personal/vendor_lineage/0002-build-Remove-Stk-2-2.patch index 17e272f..e86b83a 100644 --- a/patches_platform_personal/vendor_lineage/0002-build-Remove-Stk-2-2.patch +++ b/patches_platform_personal/vendor_lineage/0002-build-Remove-Stk-2-2.patch @@ -1,4 +1,4 @@ -From 34f8aa093286970f82014f1dae0e86e4cbeba896 Mon Sep 17 00:00:00 2001 +From fb566e5192808925dcfdaec3ee15dceec9efcbaa Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 16 Oct 2021 00:41:07 +0000 Subject: [PATCH 2/4] build: Remove Stk (2/2) @@ -22,10 +22,10 @@ index 5ff877c9..ab70301b 100644 -PRODUCT_PACKAGES += \ - Stk diff --git a/config/telephony.mk b/config/telephony.mk -index 6adf48d9..e63b320d 100644 +index be414ed5..a75ba9a5 100644 --- a/config/telephony.mk +++ b/config/telephony.mk -@@ -8,8 +8,7 @@ PRODUCT_PACKAGES += \ +@@ -13,8 +13,7 @@ PRODUCT_PACKAGES += \ # Telephony packages PRODUCT_PACKAGES += \ diff --git a/patches_platform_personal/vendor_lineage/0003-vendor_lineage-Ignore-neverallows.-again.patch b/patches_platform_personal/vendor_lineage/0003-vendor_lineage-Ignore-neverallows.-again.patch index 1ca2a1e..c56eba0 100644 --- a/patches_platform_personal/vendor_lineage/0003-vendor_lineage-Ignore-neverallows.-again.patch +++ b/patches_platform_personal/vendor_lineage/0003-vendor_lineage-Ignore-neverallows.-again.patch @@ -1,4 +1,4 @@ -From 84b5b23519166701423a324cac955e9110e36eae Mon Sep 17 00:00:00 2001 +From 1d5207e4a74c70a3ea58f8d511ceee6f1316f0be Mon Sep 17 00:00:00 2001 From: AndyCGYan Date: Mon, 1 Jul 2019 07:03:04 +0000 Subject: [PATCH 3/4] vendor_lineage: Ignore neverallows... again diff --git a/patches_platform_personal/vendor_lineage/0004-vendor_lineage-Personal-theme-as-SRO.patch b/patches_platform_personal/vendor_lineage/0004-vendor_lineage-Personal-theme-as-SRO.patch index 890250b..6a81ec1 100644 --- a/patches_platform_personal/vendor_lineage/0004-vendor_lineage-Personal-theme-as-SRO.patch +++ b/patches_platform_personal/vendor_lineage/0004-vendor_lineage-Personal-theme-as-SRO.patch @@ -1,9 +1,9 @@ -From 05700475543c1dece33a8f49bcb84d5b709a3164 Mon Sep 17 00:00:00 2001 +From 16541bcf6b647b2aaf9e446fa7cc8d2f83d1a414 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 9 Apr 2022 02:48:55 +0000 Subject: [PATCH 4/4] vendor_lineage: Personal theme as SRO -Last revised on 2023/02/11 +Last revised on 2024/02/26 ... @@ -70,12 +70,12 @@ Change-Id: I43164b7a4145616d162c6b4b4b84d1953cb483cc .../res/drawable/ic_launcher_foreground.xml | 60 +++++++++ .../res/drawable/ic_launcher_background.xml | 24 ++++ .../res/drawable/ic_launcher_foreground.xml | 34 +++++ + .../res/drawable/ic_launcher_background.xml | 24 ++++ + .../res/drawable/ic_launcher_foreground.xml | 34 +++++ .../res/drawable/ic_launcher_background.xml | 17 +++ .../res/drawable/ic_launcher_foreground.xml | 33 +++++ .../res/drawable/ic_launcher_background.xml | 18 +++ .../res/drawable/ic_launcher_foreground.xml | 34 +++++ - .../apps/Messaging/res/values/colors.xml | 7 ++ - .../Messaging/res/values/lineage_colors.xml | 4 + .../res/drawable/ic_launcher_background.xml | 23 ++++ .../res/drawable/ic_launcher_foreground.xml | 33 +++++ .../res/drawable/ic_launcher_background.xml | 18 +++ @@ -84,7 +84,7 @@ Change-Id: I43164b7a4145616d162c6b4b4b84d1953cb483cc .../res/drawable/ic_launcher_foreground.xml | 34 +++++ .../res/drawable/ic_launcher_background.xml | 20 +++ .../res/drawable/ic_launcher_foreground.xml | 34 +++++ - 73 files changed, 1632 insertions(+), 2 deletions(-) + 73 files changed, 1679 insertions(+), 2 deletions(-) create mode 100644 overlay/personal/packages/apps/Aperture/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 overlay/personal/packages/apps/Aperture/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 overlay/personal/packages/apps/AudioFX/res/drawable/ic_launcher_background.xml @@ -143,12 +143,12 @@ Change-Id: I43164b7a4145616d162c6b4b4b84d1953cb483cc create mode 100644 overlay/personal/packages/apps/ExactCalculator/res/drawable/ic_launcher_foreground.xml create mode 100644 overlay/personal/packages/apps/Gallery2/res/drawable/ic_launcher_background.xml create mode 100644 overlay/personal/packages/apps/Gallery2/res/drawable/ic_launcher_foreground.xml + create mode 100644 overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_background.xml + create mode 100644 overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 overlay/personal/packages/apps/Jelly/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 overlay/personal/packages/apps/Jelly/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 overlay/personal/packages/apps/Messaging/res/drawable/ic_launcher_background.xml create mode 100644 overlay/personal/packages/apps/Messaging/res/drawable/ic_launcher_foreground.xml - create mode 100644 overlay/personal/packages/apps/Messaging/res/values/colors.xml - create mode 100644 overlay/personal/packages/apps/Messaging/res/values/lineage_colors.xml create mode 100644 overlay/personal/packages/apps/Recorder/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 overlay/personal/packages/apps/Recorder/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 overlay/personal/packages/apps/Settings/res/drawable/ic_launcher_background.xml @@ -159,12 +159,12 @@ Change-Id: I43164b7a4145616d162c6b4b4b84d1953cb483cc create mode 100644 overlay/personal/packages/inputmethods/LatinIME/java/res/drawable/ic_launcher_foreground.xml diff --git a/config/common.mk b/config/common.mk -index 70e0cbaf..4da11943 100644 +index b19872b0..8e8c83bf 100644 --- a/config/common.mk +++ b/config/common.mk -@@ -189,10 +189,13 @@ PRODUCT_DEXPREOPT_SPEED_APPS += \ - PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ - dalvik.vm.systemuicompilerfilter=speed +@@ -205,10 +205,13 @@ PRODUCT_PRODUCT_PROPERTIES += \ + setupwizard.theme=glif_v4 \ + setupwizard.feature.day_night_mode_enabled=true -PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += vendor/lineage/overlay/no-rro +PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += \ @@ -1822,6 +1822,76 @@ index 00000000..03b51d0c + + + +diff --git a/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_background.xml b/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_background.xml +new file mode 100644 +index 00000000..32abe0b8 +--- /dev/null ++++ b/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_background.xml +@@ -0,0 +1,24 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_foreground.xml b/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_foreground.xml +new file mode 100644 +index 00000000..03b51d0c +--- /dev/null ++++ b/overlay/personal/packages/apps/Glimpse/app/src/main/res/drawable/ic_launcher_foreground.xml +@@ -0,0 +1,34 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ diff --git a/overlay/personal/packages/apps/Jelly/app/src/main/res/drawable/ic_launcher_background.xml b/overlay/personal/packages/apps/Jelly/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 00000000..bf75b615 @@ -1948,29 +2018,6 @@ index 00000000..ab598892 + + + -diff --git a/overlay/personal/packages/apps/Messaging/res/values/colors.xml b/overlay/personal/packages/apps/Messaging/res/values/colors.xml -new file mode 100644 -index 00000000..6e1ef338 ---- /dev/null -+++ b/overlay/personal/packages/apps/Messaging/res/values/colors.xml -@@ -0,0 +1,7 @@ -+ -+ -+ #2A56C6 -+ #1C3AA9 -+ #802A56C6 -+ #802A56C6 -+ -diff --git a/overlay/personal/packages/apps/Messaging/res/values/lineage_colors.xml b/overlay/personal/packages/apps/Messaging/res/values/lineage_colors.xml -new file mode 100644 -index 00000000..7b407a1c ---- /dev/null -+++ b/overlay/personal/packages/apps/Messaging/res/values/lineage_colors.xml -@@ -0,0 +1,4 @@ -+ -+ -+ #F50057 -+ diff --git a/overlay/personal/packages/apps/Recorder/app/src/main/res/drawable/ic_launcher_background.xml b/overlay/personal/packages/apps/Recorder/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 00000000..afc988fc diff --git a/patches_treble/bionic/0001-Add-new-mechanism-to-fake-vendor-props-on-a-per-proc.patch b/patches_treble/bionic/0001-Add-new-mechanism-to-fake-vendor-props-on-a-per-proc.patch index f146e4a..1c9f9ed 100644 --- a/patches_treble/bionic/0001-Add-new-mechanism-to-fake-vendor-props-on-a-per-proc.patch +++ b/patches_treble/bionic/0001-Add-new-mechanism-to-fake-vendor-props-on-a-per-proc.patch @@ -1,30 +1,30 @@ -From 1a8eee6d2a1d79412902331b74283eec77414c6b Mon Sep 17 00:00:00 2001 +From ac39cb00a04c571699df695ce0d144d8cb386f35 Mon Sep 17 00:00:00 2001 From: Pierre-Hugues Husson Date: Sat, 19 Feb 2022 08:20:25 -0500 -Subject: [PATCH 1/2] Add new mechanism to fake vendor props on a per-process - basis +Subject: [PATCH] Add new mechanism to fake vendor props on a per-process basis This reads debug.phh.props.. If its value is "vendor", then ro.product.device/ro.product.manufacturer is read from vendor --- - libc/system_properties/system_properties.cpp | 38 ++++++++++++++++++++ - 1 file changed, 38 insertions(+) + libc/system_properties/system_properties.cpp | 87 +++++++++++++++++++- + 1 file changed, 85 insertions(+), 2 deletions(-) diff --git a/libc/system_properties/system_properties.cpp b/libc/system_properties/system_properties.cpp -index 1cb15c3df..d6e7e3e68 100644 +index 9dd5e35ce..886bef127 100644 --- a/libc/system_properties/system_properties.cpp +++ b/libc/system_properties/system_properties.cpp -@@ -35,6 +35,7 @@ +@@ -36,6 +36,8 @@ #include #include #include ++#include +#include #include -@@ -50,6 +51,32 @@ - #define SERIAL_DIRTY(serial) ((serial)&1) +@@ -53,6 +55,85 @@ #define SERIAL_VALUE_LEN(serial) ((serial) >> 24) + #define APPCOMPAT_PREFIX "ro.appcompat_override." +static char comm[128]; +static bool self_ok = false; @@ -35,44 +35,101 @@ index 1cb15c3df..d6e7e3e68 100644 + if(self_ok) return; + self_ok = true; + -+ int fd = open("/proc/self/comm", O_RDONLY); ++ char cmdline[128]; ++ int fd = open("/proc/self/cmdline", O_RDONLY); + if(fd<0) return; -+ read(fd, comm, sizeof(comm)-1); -+ for(unsigned i=0; i0) return r; -+ } -+ if(strcmp(name, "ro.product.manufacturer") == 0) { -+ int r = Get("ro.product.vendor.manufacturer", value); -+ if(r>0) return r; -+ } -+ } - const prop_info* pi = Find(name); + const prop_info* SystemProperties::Find(const char* name) { ++ const char* newName = redirectToProp(name); ++ + if (!initialized_) { + return nullptr; + } - if (pi != nullptr) { +- prop_area* pa = contexts_->GetPropAreaForName(name); ++ prop_area* pa = contexts_->GetPropAreaForName(newName); + if (!pa) { + async_safe_format_log(ANDROID_LOG_WARN, "libc", "Access denied finding property \"%s\"", name); + return nullptr; + } + +- return pa->find(name); ++ return pa->find(newName); + } + + static bool is_appcompat_override(const char* name) { -- 2.34.1 diff --git a/patches_treble/bionic/0002-Rework-property-overriding.patch b/patches_treble/bionic/0002-Rework-property-overriding.patch deleted file mode 100644 index 546306a..0000000 --- a/patches_treble/bionic/0002-Rework-property-overriding.patch +++ /dev/null @@ -1,145 +0,0 @@ -From ad25fd64270b2c3dc9fbce5e97c2eb75d63f015b Mon Sep 17 00:00:00 2001 -From: Pierre-Hugues Husson -Date: Thu, 19 Jan 2023 16:44:01 -0500 -Subject: [PATCH 2/2] Rework property overriding - -- Support property read with callback in addition to previous - constant-size property_get -- Add another class of redirect "keymaster", to redirect to AOSP/GSI - props + SPL based on boot.img ---- - libc/system_properties/system_properties.cpp | 77 +++++++++++++++----- - 1 file changed, 58 insertions(+), 19 deletions(-) - -diff --git a/libc/system_properties/system_properties.cpp b/libc/system_properties/system_properties.cpp -index d6e7e3e68..40ff48bad 100644 ---- a/libc/system_properties/system_properties.cpp -+++ b/libc/system_properties/system_properties.cpp -@@ -35,6 +35,7 @@ - #include - #include - #include -+#include - #include - - #include -@@ -60,23 +61,70 @@ static void read_self() { - if(self_ok) return; - self_ok = true; - -- int fd = open("/proc/self/comm", O_RDONLY); -+ char cmdline[128]; -+ int fd = open("/proc/self/cmdline", O_RDONLY); - if(fd<0) return; -- read(fd, comm, sizeof(comm)-1); -- for(unsigned i=0; iGetPropAreaForName(name); -+ prop_area* pa = contexts_->GetPropAreaForName(newName); - if (!pa) { - async_safe_format_log(ANDROID_LOG_WARN, "libc", "Access denied finding property \"%s\"", name); - return nullptr; - } - -- return pa->find(name); -+ return pa->find(newName); - } - - static bool is_read_only(const char* name) { -@@ -243,17 +293,6 @@ void SystemProperties::ReadCallback(const prop_info* pi, - } - - int SystemProperties::Get(const char* name, char* value) { -- read_self(); -- if(strcmp(comm_override, "vendor") == 0) { -- if(strcmp(name, "ro.product.device") == 0) { -- int r = Get("ro.product.vendor.device", value); -- if(r>0) return r; -- } -- if(strcmp(name, "ro.product.manufacturer") == 0) { -- int r = Get("ro.product.vendor.manufacturer", value); -- if(r>0) return r; -- } -- } - const prop_info* pi = Find(name); - - if (pi != nullptr) { --- -2.34.1 - diff --git a/patches_treble/frameworks_av/0001-APM-Restore-S-R-and-Q-behavior-respectively-for-tele.patch b/patches_treble/frameworks_av/0001-APM-Restore-S-R-and-Q-behavior-respectively-for-tele.patch index edfb224..98e30fc 100644 --- a/patches_treble/frameworks_av/0001-APM-Restore-S-R-and-Q-behavior-respectively-for-tele.patch +++ b/patches_treble/frameworks_av/0001-APM-Restore-S-R-and-Q-behavior-respectively-for-tele.patch @@ -1,4 +1,4 @@ -From b5b0fd54c77d0c5feb3eb20395fa6e2400c41172 Mon Sep 17 00:00:00 2001 +From c92b1e40a795bf844c6347b454403cc26ff3fbce Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Thu, 18 Aug 2022 15:44:46 -0400 Subject: [PATCH 1/3] APM: Restore S, R and Q behavior respectively for @@ -36,12 +36,12 @@ Change-Id: I56d36d2aef4319935cb88a3e4771b23c6d5b2145 2 files changed, 147 insertions(+), 62 deletions(-) diff --git a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp -index f093e685ba..9a90009f9e 100644 +index 135548fb9c..fc99bdbd78 100644 --- a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp +++ b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp -@@ -689,6 +689,17 @@ status_t AudioPolicyManager::updateCallRoutingInternal( - disconnectTelephonyAudioSource(mCallRxSourceClient); - disconnectTelephonyAudioSource(mCallTxSourceClient); +@@ -692,6 +692,17 @@ status_t AudioPolicyManager::updateCallRoutingInternal( + ALOGV("%s device rxDevice %s txDevice %s", __func__, + rxDevices.itemAt(0)->toString().c_str(), txSourceDevice->toString().c_str()); + // release existing RX patch if any + if (mCallRxPatch != 0) { @@ -57,7 +57,7 @@ index f093e685ba..9a90009f9e 100644 auto telephonyRxModule = mHwModules.getModuleForDeviceType(AUDIO_DEVICE_IN_TELEPHONY_RX, AUDIO_FORMAT_DEFAULT); auto telephonyTxModule = -@@ -711,9 +722,20 @@ status_t AudioPolicyManager::updateCallRoutingInternal( +@@ -714,9 +725,20 @@ status_t AudioPolicyManager::updateCallRoutingInternal( ALOGE("%s() no telephony Tx and/or RX device", __func__); return INVALID_OPERATION; } @@ -81,9 +81,9 @@ index f093e685ba..9a90009f9e 100644 } else { // If the RX device is on the primary HW module, then use legacy routing method for // voice calls via setOutputDevice() on primary output. -@@ -730,7 +752,14 @@ status_t AudioPolicyManager::updateCallRoutingInternal( - if (!createRxPatch) { - muteWaitMs = setOutputDevices(mPrimaryOutput, rxDevices, true, delayMs); +@@ -737,7 +759,14 @@ status_t AudioPolicyManager::updateCallRoutingInternal( + } + muteWaitMs = setOutputDevices(__func__, mPrimaryOutput, rxDevices, true, delayMs); } else { // create RX path audio patch - connectTelephonyRxAudioSource(); + if (property_get_int32("ro.vndk.version", 31) >= 31) { @@ -97,7 +97,7 @@ index f093e685ba..9a90009f9e 100644 // If the TX device is on the primary HW module but RX device is // on other HW module, SinkMetaData of telephony input should handle it // assuming the device uses audio HAL V5.0 and above -@@ -745,7 +774,12 @@ status_t AudioPolicyManager::updateCallRoutingInternal( +@@ -752,7 +781,12 @@ status_t AudioPolicyManager::updateCallRoutingInternal( closeActiveClients(activeDesc); } } @@ -111,7 +111,7 @@ index f093e685ba..9a90009f9e 100644 } if (waitMs != nullptr) { *waitMs = muteWaitMs; -@@ -753,6 +787,36 @@ status_t AudioPolicyManager::updateCallRoutingInternal( +@@ -760,6 +794,36 @@ status_t AudioPolicyManager::updateCallRoutingInternal( return NO_ERROR; } @@ -148,7 +148,7 @@ index f093e685ba..9a90009f9e 100644 bool AudioPolicyManager::isDeviceOfModule( const sp& devDesc, const char *moduleId) const { sp module = mHwModules.getModuleFromName(moduleId); -@@ -4958,83 +5022,101 @@ status_t AudioPolicyManager::createAudioPatchInternal(const struct audio_patch * +@@ -5087,83 +5151,101 @@ status_t AudioPolicyManager::createAudioPatchInternal(const struct audio_patch * // in config XML to reach the sink so that is can be declared as available. audio_io_handle_t output = AUDIO_IO_HANDLE_NONE; sp outputDesc; @@ -308,10 +308,10 @@ index f093e685ba..9a90009f9e 100644 AUDIO_STREAM_PATCH; patchBuilder.addSource(srcMixPortConfig); diff --git a/services/audiopolicy/managerdefault/AudioPolicyManager.h b/services/audiopolicy/managerdefault/AudioPolicyManager.h -index 88bafefdb1..188b5732b3 100644 +index a1c8f6202c..ee1b595e30 100644 --- a/services/audiopolicy/managerdefault/AudioPolicyManager.h +++ b/services/audiopolicy/managerdefault/AudioPolicyManager.h -@@ -953,6 +953,9 @@ protected: +@@ -964,6 +964,9 @@ protected: SoundTriggerSessionCollection mSoundTriggerSessions; diff --git a/patches_treble/frameworks_av/0002-APM-Optionally-force-load-audio-policy-for-system-si.patch b/patches_treble/frameworks_av/0002-APM-Optionally-force-load-audio-policy-for-system-si.patch index c68bf9d..538b7d6 100644 --- a/patches_treble/frameworks_av/0002-APM-Optionally-force-load-audio-policy-for-system-si.patch +++ b/patches_treble/frameworks_av/0002-APM-Optionally-force-load-audio-policy-for-system-si.patch @@ -1,4 +1,4 @@ -From cf178b74640512639620ed5f99122407225053f8 Mon Sep 17 00:00:00 2001 +From ae67c8f78aee3c99ee2c9a8da964ad7b5a0cf30d Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Wed, 24 Aug 2022 15:42:39 -0400 Subject: [PATCH 2/3] APM: Optionally force-load audio policy for system-side @@ -14,7 +14,7 @@ Change-Id: I279fff541a531f922f3fa55b8f14d00237db59ff 1 file changed, 25 insertions(+) diff --git a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp -index 3d5c1d2e42..881c188e4c 100644 +index 6f19a7a145..08836377b7 100644 --- a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp +++ b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp @@ -25,6 +25,7 @@ @@ -25,7 +25,7 @@ index 3d5c1d2e42..881c188e4c 100644 #include #include #include -@@ -885,6 +886,30 @@ status_t PolicySerializer::deserialize(const char *configFile, AudioPolicyConfig +@@ -895,6 +896,30 @@ status_t PolicySerializer::deserialize(const char *configFile, AudioPolicyConfig if (status != NO_ERROR) { return status; } diff --git a/patches_treble/frameworks_av/0003-APM-Remove-A2DP-audio-ports-from-the-primary-HAL.patch b/patches_treble/frameworks_av/0003-APM-Remove-A2DP-audio-ports-from-the-primary-HAL.patch index f8a6fcc..0a181e2 100644 --- a/patches_treble/frameworks_av/0003-APM-Remove-A2DP-audio-ports-from-the-primary-HAL.patch +++ b/patches_treble/frameworks_av/0003-APM-Remove-A2DP-audio-ports-from-the-primary-HAL.patch @@ -1,4 +1,4 @@ -From f792286920c7c2c43758a8e1053bab89948bf305 Mon Sep 17 00:00:00 2001 +From 33f3d337016bfbc4a7836b504c5baf8ad9130a45 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Thu, 25 Aug 2022 13:30:29 -0400 Subject: [PATCH 3/3] APM: Remove A2DP audio ports from the primary HAL @@ -16,7 +16,7 @@ Change-Id: I3305594a17285da113167b419543543f0ef71122 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp -index 881c188e4c..8519cfdc04 100644 +index 08836377b7..0f7c903909 100644 --- a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp +++ b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp @@ -26,6 +26,7 @@ @@ -40,7 +40,7 @@ index 881c188e4c..8519cfdc04 100644 } } if (!xmlStrcmp(cur->name, reinterpret_cast(Trait::tag))) { -@@ -679,6 +677,7 @@ std::variant PolicySerializer::deserialize PolicySerializer::deserialize PolicySerializer::deserialize PolicySerializer::deserialize Date: Sun, 25 Oct 2020 23:57:26 +0100 Subject: [PATCH 1/5] Re-implement fnmatch-like behaviour for RRO java-side @@ -11,7 +11,7 @@ Change-Id: Id38292a9a1453aa87b8401c1fdb390fa4e63c7d1 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/core/java/android/content/pm/parsing/FrameworkParsingPackageUtils.java b/core/java/android/content/pm/parsing/FrameworkParsingPackageUtils.java -index b75ba82ad091..b344f7232190 100644 +index fc06dd8de3b6..41da26bff956 100644 --- a/core/java/android/content/pm/parsing/FrameworkParsingPackageUtils.java +++ b/core/java/android/content/pm/parsing/FrameworkParsingPackageUtils.java @@ -223,8 +223,17 @@ public class FrameworkParsingPackageUtils { diff --git a/patches_treble/frameworks_base/0002-LightsService-Alternative-backlight-scale.patch b/patches_treble/frameworks_base/0002-LightsService-Alternative-backlight-scale.patch index 0667b5f..f93f978 100644 --- a/patches_treble/frameworks_base/0002-LightsService-Alternative-backlight-scale.patch +++ b/patches_treble/frameworks_base/0002-LightsService-Alternative-backlight-scale.patch @@ -1,4 +1,4 @@ -From 69fbb22f3d265d9baf7ba87c2e0d42671a898037 Mon Sep 17 00:00:00 2001 +From cf5d89e76aa67ca83e682a9e091e6ddc7e43fd41 Mon Sep 17 00:00:00 2001 From: Pierre-Hugues Husson Date: Sat, 24 Mar 2018 08:01:48 +0100 Subject: [PATCH 2/5] LightsService: Alternative backlight scale @@ -11,18 +11,18 @@ Change-Id: I46ae69c758d1a4609d89cf1c293488ea5fc76787 1 file changed, 13 insertions(+) diff --git a/services/core/java/com/android/server/lights/LightsService.java b/services/core/java/com/android/server/lights/LightsService.java -index fea6b29d9260..2a9a3b63ea2e 100644 +index 4d26f43307b2..c5e672726d21 100644 --- a/services/core/java/com/android/server/lights/LightsService.java +++ b/services/core/java/com/android/server/lights/LightsService.java -@@ -32,6 +32,7 @@ import android.os.IBinder; - import android.os.Looper; +@@ -32,6 +32,7 @@ import android.os.Looper; + import android.os.PermissionEnforcer; import android.os.RemoteException; import android.os.ServiceManager; +import android.os.SystemProperties; import android.os.Trace; import android.provider.Settings; import android.util.Slog; -@@ -295,6 +296,18 @@ public class LightsService extends SystemService { +@@ -298,6 +299,18 @@ public class LightsService extends SystemService { return; } int brightnessInt = BrightnessSynchronizer.brightnessFloatToInt(brightness); diff --git a/patches_treble/frameworks_base/0003-Revert-Remove-more-FDE-methods-from-StorageManager.patch b/patches_treble/frameworks_base/0003-Revert-Remove-more-FDE-methods-from-StorageManager.patch index 2393f5c..5507c08 100644 --- a/patches_treble/frameworks_base/0003-Revert-Remove-more-FDE-methods-from-StorageManager.patch +++ b/patches_treble/frameworks_base/0003-Revert-Remove-more-FDE-methods-from-StorageManager.patch @@ -1,4 +1,4 @@ -From f5e64bb671b92afc7e9d897c950f3c51aebfe882 Mon Sep 17 00:00:00 2001 +From 09e7b9a70cfe3ac0bf4f4791bed3b0dd663f06f1 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 15 Oct 2022 09:33:56 +0000 Subject: [PATCH 3/5] Revert "Remove more FDE methods from StorageManager" @@ -7,15 +7,15 @@ This reverts commit bd13f84152449a3ead6fa8604fd31f48c0224676. Change-Id: Ic394934ec27b1a486c60123130825d44dad73412 --- - .../android/os/storage/StorageManager.java | 57 +++++++++++++++++++ - .../internal/os/RoSystemProperties.java | 4 ++ - 2 files changed, 61 insertions(+) + .../android/os/storage/StorageManager.java | 74 +++++++++++++++++++ + .../internal/os/RoSystemProperties.java | 4 + + 2 files changed, 78 insertions(+) diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java -index 80dd48825ba7..cb4769ff4ec3 100644 +index 78a12f75a508..f9999fa8fde8 100644 --- a/core/java/android/os/storage/StorageManager.java +++ b/core/java/android/os/storage/StorageManager.java -@@ -1660,6 +1660,15 @@ public class StorageManager { +@@ -1714,6 +1714,15 @@ public class StorageManager { return false; } @@ -31,10 +31,19 @@ index 80dd48825ba7..cb4769ff4ec3 100644 /** {@hide} * Is this device encrypted? *

-@@ -1693,6 +1702,54 @@ public class StorageManager { - return isFileEncrypted(); +@@ -1738,6 +1747,71 @@ public class StorageManager { + return RoSystemProperties.CRYPTO_FILE_ENCRYPTED; } ++ /** {@hide} ++ * @deprecated Use {@link #isFileEncrypted} instead, since emulated FBE is no longer supported. ++ */ ++ @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) ++ @Deprecated ++ public static boolean isFileEncryptedNativeOnly() { ++ return false; ++ } ++ + /** {@hide} + * Is this device block encrypted? + * @return true for block encrypted. (Implies isEncrypted() == true) @@ -83,9 +92,17 @@ index 80dd48825ba7..cb4769ff4ec3 100644 + return false; + } + - /** {@hide} - * @deprecated Use {@link #isFileEncrypted} instead, since emulated FBE is no longer supported. - */ ++ /** {@hide} ++ * @deprecated Use {@link #isFileEncrypted} instead, since emulated FBE is no longer supported. ++ */ ++ @Deprecated ++ public static boolean isFileEncryptedNativeOrEmulated() { ++ return false; ++ } ++ + /** {@hide} */ + public static boolean hasAdoptable() { + switch (SystemProperties.get(PROP_ADOPTABLE)) { diff --git a/core/java/com/android/internal/os/RoSystemProperties.java b/core/java/com/android/internal/os/RoSystemProperties.java index 40d5c4761dff..66288706b0f1 100644 --- a/core/java/com/android/internal/os/RoSystemProperties.java diff --git a/patches_treble/frameworks_base/0004-Restore-getSimStateForSlotIndex-in-SubscriptionManag.patch b/patches_treble/frameworks_base/0004-Restore-getSimStateForSlotIndex-in-SubscriptionManag.patch index 560d881..9070b47 100644 --- a/patches_treble/frameworks_base/0004-Restore-getSimStateForSlotIndex-in-SubscriptionManag.patch +++ b/patches_treble/frameworks_base/0004-Restore-getSimStateForSlotIndex-in-SubscriptionManag.patch @@ -1,4 +1,4 @@ -From aaf44460fbf5dcdbb844e4c5bba99b48576e59ef Mon Sep 17 00:00:00 2001 +From fa3c64ce2e193ccb61517284d66f78cc3d6db13e Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Wed, 2 Aug 2023 20:59:53 +0800 Subject: [PATCH 4/5] Restore getSimStateForSlotIndex in SubscriptionManager @@ -11,10 +11,10 @@ Change-Id: I41bac57c68055f369232359a464642daab94403b 1 file changed, 14 insertions(+) diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java -index 64e43568e4d6..cfb4f12815a2 100644 +index 326b6f5af613..b994888362b0 100644 --- a/telephony/java/android/telephony/SubscriptionManager.java +++ b/telephony/java/android/telephony/SubscriptionManager.java -@@ -2549,6 +2549,20 @@ public class SubscriptionManager { +@@ -2693,6 +2693,20 @@ public class SubscriptionManager { return TelephonyManager.getDefault().isNetworkRoaming(subId); } diff --git a/patches_treble/frameworks_base/0005-Restore-getPhysicalDisplayIds-in-SurfaceControl.patch b/patches_treble/frameworks_base/0005-Restore-getPhysicalDisplayIds-in-SurfaceControl.patch index fbf409e..3fe32f0 100644 --- a/patches_treble/frameworks_base/0005-Restore-getPhysicalDisplayIds-in-SurfaceControl.patch +++ b/patches_treble/frameworks_base/0005-Restore-getPhysicalDisplayIds-in-SurfaceControl.patch @@ -1,4 +1,4 @@ -From d9dd8793634f892d905e46d45e190f72f8761def Mon Sep 17 00:00:00 2001 +From 7dbc3c83213b1dacce2eaa90835721b13f504781 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sun, 19 Nov 2023 23:07:03 +0800 Subject: [PATCH 5/5] Restore getPhysicalDisplayIds in SurfaceControl @@ -15,10 +15,10 @@ Change-Id: Ie056ecaf76acbc70d73e1c26cc4542088fcda18d 2 files changed, 26 insertions(+) diff --git a/core/java/android/view/SurfaceControl.java b/core/java/android/view/SurfaceControl.java -index c11f4975149d..cf9262aafb03 100644 +index cbbe7856178d..253eb492bd8b 100644 --- a/core/java/android/view/SurfaceControl.java +++ b/core/java/android/view/SurfaceControl.java -@@ -179,6 +179,7 @@ public final class SurfaceControl implements Parcelable { +@@ -181,6 +181,7 @@ public final class SurfaceControl implements Parcelable { private static native boolean nativeClearAnimationFrameStats(); private static native boolean nativeGetAnimationFrameStats(WindowAnimationFrameStats outStats); @@ -26,7 +26,7 @@ index c11f4975149d..cf9262aafb03 100644 private static native void nativeSetDisplaySurface(long transactionObj, IBinder displayToken, long nativeSurfaceObject); private static native void nativeSetDisplayLayerStack(long transactionObj, -@@ -2402,6 +2403,13 @@ public final class SurfaceControl implements Parcelable { +@@ -2440,6 +2441,13 @@ public final class SurfaceControl implements Parcelable { IVirtualDisplayCallback.Stub.asInterface(displayToken)); } @@ -41,7 +41,7 @@ index c11f4975149d..cf9262aafb03 100644 * Returns whether protected content is supported in GPU composition. * @hide diff --git a/core/jni/android_view_SurfaceControl.cpp b/core/jni/android_view_SurfaceControl.cpp -index 424925328dfd..2ebd6bec0b18 100644 +index db42246ca76c..0be04bb380d8 100644 --- a/core/jni/android_view_SurfaceControl.cpp +++ b/core/jni/android_view_SurfaceControl.cpp @@ -36,6 +36,7 @@ @@ -52,7 +52,7 @@ index 424925328dfd..2ebd6bec0b18 100644 #include #include #include -@@ -985,6 +986,21 @@ static void nativeSetDestinationFrame(JNIEnv* env, jclass clazz, jlong transacti +@@ -1010,6 +1011,21 @@ static void nativeSetDestinationFrame(JNIEnv* env, jclass clazz, jlong transacti transaction->setDestinationFrame(ctrl, crop); } @@ -74,10 +74,10 @@ index 424925328dfd..2ebd6bec0b18 100644 static jobject nativeGetDisplayedContentSamplingAttributes(JNIEnv* env, jclass clazz, jobject tokenObj) { sp token(ibinderForJavaObject(env, tokenObj)); -@@ -2133,6 +2149,8 @@ static const JNINativeMethod sSurfaceControlMethods[] = { - (void*)nativeSetFrameRate }, - {"nativeSetDefaultFrameRateCompatibility", "(JJI)V", - (void*)nativeSetDefaultFrameRateCompatibility}, +@@ -2187,6 +2203,8 @@ static const JNINativeMethod sSurfaceControlMethods[] = { + (void*)nativeSetFrameRateCategory}, + {"nativeSetFrameRateSelectionStrategy", "(JJI)V", + (void*)nativeSetFrameRateSelectionStrategy}, + {"nativeGetPhysicalDisplayIds", "()[J", + (void*)nativeGetPhysicalDisplayIds }, {"nativeSetDisplaySurface", "(JLandroid/os/IBinder;J)V", diff --git a/patches_treble/packages_apps_Settings/0001-TrebleSettings-Screen-resolution-refresh-rate.patch b/patches_treble/packages_apps_Settings/0001-TrebleSettings-Screen-resolution-refresh-rate.patch index e1581e0..ba8668f 100644 --- a/patches_treble/packages_apps_Settings/0001-TrebleSettings-Screen-resolution-refresh-rate.patch +++ b/patches_treble/packages_apps_Settings/0001-TrebleSettings-Screen-resolution-refresh-rate.patch @@ -1,4 +1,4 @@ -From 5310d801b343b76a82247193b092e7944681e3c0 Mon Sep 17 00:00:00 2001 +From e76618742f7398aa64c1e45b27a2dbcbcb3f20e1 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Thu, 22 Sep 2022 12:37:50 +0000 Subject: [PATCH 1/8] TrebleSettings: Screen resolution & refresh rate @@ -20,10 +20,10 @@ Change-Id: I4a4679cdb6d4ede55479e9ab2f014342025b0fec create mode 100644 src/com/android/settings/treble/TrebleSettings.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml -index f05f3d2381..9cf3b4fd2d 100644 +index deb24592737..e5edf4977df 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml -@@ -241,6 +241,14 @@ +@@ -248,6 +248,14 @@ android:value="com.android.settings.shortcut.CreateShortcut" /> @@ -40,7 +40,7 @@ index f05f3d2381..9cf3b4fd2d 100644 android:name=".Settings$NetworkDashboardActivity" diff --git a/res/drawable/ic_settings_treble.xml b/res/drawable/ic_settings_treble.xml new file mode 100644 -index 0000000000..3c56ed7032 +index 00000000000..3c56ed7032c --- /dev/null +++ b/res/drawable/ic_settings_treble.xml @@ -0,0 +1,10 @@ @@ -55,7 +55,7 @@ index 0000000000..3c56ed7032 + android:pathData="M10.82 12.49c.02-.16.04-.32.04-.49 0-.17-.02-.33-.04-.49l1.08-.82c.1-.07.12-.21.06-.32l-1.03-1.73c-.06-.11-.2-.15-.31-.11l-1.28.5c-.27-.2-.56-.36-.87-.49l-.2-1.33c0-.12-.11-.21-.24-.21H5.98c-.13 0-.24.09-.26.21l-.2 1.32c-.31.12-.6.3-.87.49l-1.28-.5c-.12-.05-.25 0-.31.11l-1.03 1.73c-.06.12-.03.25.07.33l1.08.82c-.02.16-.03.33-.03.49 0 .17.02.33.04.49l-1.09.83c-.1.07-.12.21-.06.32l1.03 1.73c.06.11.2.15.31.11l1.28-.5c.27.2.56.36.87.49l.2 1.32c.01.12.12.21.25.21h2.06c.13 0 .24-.09.25-.21l.2-1.32c.31-.12.6-.3.87-.49l1.28.5c.12.05.25 0 .31-.11l1.03-1.73c.06-.11.04-.24-.06-.32l-1.1-.83zM7 13.75c-.99 0-1.8-.78-1.8-1.75s.81-1.75 1.8-1.75 1.8.78 1.8 1.75S8 13.75 7 13.75zM18 1.01L8 1c-1.1 0-2 .9-2 2v3h2V5h10v14H8v-1H6v3c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99z"/> + diff --git a/res/values/menu_keys.xml b/res/values/menu_keys.xml -index 27e9639122..ef25f9971c 100755 +index 27e9639122a..ef25f9971c4 100755 --- a/res/values/menu_keys.xml +++ b/res/values/menu_keys.xml @@ -16,6 +16,7 @@ @@ -67,10 +67,10 @@ index 27e9639122..ef25f9971c 100755 top_level_communal top_level_connected_devices diff --git a/res/values/strings.xml b/res/values/strings.xml -index 32cb7803a6..dcb08f0731 100644 +index 8fcbcbf6b49..48f0b763431 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6875,6 +6875,16 @@ +@@ -7178,6 +7178,16 @@ Settings @@ -88,7 +88,7 @@ index 32cb7803a6..dcb08f0731 100644 Network & internet diff --git a/res/xml/top_level_settings.xml b/res/xml/top_level_settings.xml -index d050a1f274..258a567f56 100644 +index d050a1f2747..258a567f561 100644 --- a/res/xml/top_level_settings.xml +++ b/res/xml/top_level_settings.xml @@ -20,6 +20,15 @@ @@ -109,7 +109,7 @@ index d050a1f274..258a567f56 100644 android:icon="@drawable/ic_settings_wireless" diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml new file mode 100644 -index 0000000000..1a82c468a2 +index 00000000000..1a82c468a26 --- /dev/null +++ b/res/xml/treble_settings.xml @@ -0,0 +1,18 @@ @@ -133,7 +133,7 @@ index 0000000000..1a82c468a2 + diff --git a/src/com/android/settings/treble/ScreenResolutionRefreshRatePreferenceController.java b/src/com/android/settings/treble/ScreenResolutionRefreshRatePreferenceController.java new file mode 100644 -index 0000000000..d8d7b4faf6 +index 00000000000..9c609b606de --- /dev/null +++ b/src/com/android/settings/treble/ScreenResolutionRefreshRatePreferenceController.java @@ -0,0 +1,176 @@ @@ -192,7 +192,7 @@ index 0000000000..d8d7b4faf6 + SurfaceControl.getDynamicDisplayInfo(physicalDisplayIds[0]).supportedDisplayModes; + Set summarySet = new HashSet<>(); + for (DisplayMode m : supportedDisplayModes) { -+ String summary = String.format("%dx%d @ %dHz", m.width, m.height, Math.round(m.refreshRate)); ++ String summary = String.format("%dx%d @ %dHz", m.width, m.height, Math.round(m.peakRefreshRate)); + if (!summarySet.contains(summary)) { + summarySet.add(summary); + mModes.add(m); @@ -200,10 +200,10 @@ index 0000000000..d8d7b4faf6 + } + Collections.sort(mModes, Comparator.comparing((DisplayMode m)->m.width) + .thenComparing(m->m.height) -+ .thenComparing(m->m.refreshRate) ++ .thenComparing(m->m.peakRefreshRate) + .thenComparing(m->m.id)); + for (DisplayMode m : mModes) { -+ String summary = String.format("%dx%d @ %dHz", m.width, m.height, Math.round(m.refreshRate)); ++ String summary = String.format("%dx%d @ %dHz", m.width, m.height, Math.round(m.peakRefreshRate)); + mEntries.add(summary); + mValues.add(String.valueOf(m.id)); + } @@ -315,7 +315,7 @@ index 0000000000..d8d7b4faf6 +} diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java new file mode 100644 -index 0000000000..e581539229 +index 00000000000..e581539229b --- /dev/null +++ b/src/com/android/settings/treble/TrebleSettings.java @@ -0,0 +1,39 @@ diff --git a/patches_treble/packages_apps_Settings/0002-TrebleSettings-Basic-audio-and-display-fixes.patch b/patches_treble/packages_apps_Settings/0002-TrebleSettings-Basic-audio-and-display-fixes.patch index 6748ef0..5fcce10 100644 --- a/patches_treble/packages_apps_Settings/0002-TrebleSettings-Basic-audio-and-display-fixes.patch +++ b/patches_treble/packages_apps_Settings/0002-TrebleSettings-Basic-audio-and-display-fixes.patch @@ -1,4 +1,4 @@ -From 01ce7e73cb79e56484594b0ce03eb2ebfa193e90 Mon Sep 17 00:00:00 2001 +From 7cff85caaabd92c499d24c2915d7735d0b5cad4d Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 24 Sep 2022 03:38:41 +0000 Subject: [PATCH 2/8] TrebleSettings: Basic audio and display fixes @@ -21,10 +21,10 @@ Change-Id: I4f22dcd9c59c40b3fd70ba642db35b9466467b7d create mode 100644 src/com/android/settings/treble/UseAlternativeBacklightScalePreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index dcb08f0731..f799b4d0c7 100644 +index 48f0b763431..0961c045330 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6879,11 +6879,19 @@ +@@ -7182,11 +7182,19 @@ Treble settings Fixes & tweaks for GSIs @@ -45,7 +45,7 @@ index dcb08f0731..f799b4d0c7 100644 Network & internet diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 1a82c468a2..336137c95f 100644 +index 1a82c468a26..336137c95f1 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -6,6 +6,19 @@ @@ -81,7 +81,7 @@ index 1a82c468a2..336137c95f 100644 diff --git a/src/com/android/settings/treble/DisableSoundvolumeEffectPreferenceController.java b/src/com/android/settings/treble/DisableSoundvolumeEffectPreferenceController.java new file mode 100644 -index 0000000000..8feb318f55 +index 00000000000..8feb318f55a --- /dev/null +++ b/src/com/android/settings/treble/DisableSoundvolumeEffectPreferenceController.java @@ -0,0 +1,59 @@ @@ -145,7 +145,7 @@ index 0000000000..8feb318f55 + +} diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java -index e581539229..5c1611c053 100644 +index e581539229b..5c1611c0534 100644 --- a/src/com/android/settings/treble/TrebleSettings.java +++ b/src/com/android/settings/treble/TrebleSettings.java @@ -32,7 +32,10 @@ public class TrebleSettings extends DashboardFragment { @@ -161,7 +161,7 @@ index e581539229..5c1611c053 100644 diff --git a/src/com/android/settings/treble/UseAlternativeAudioPolicyPreferenceController.java b/src/com/android/settings/treble/UseAlternativeAudioPolicyPreferenceController.java new file mode 100644 -index 0000000000..fbc327cba0 +index 00000000000..fbc327cba0b --- /dev/null +++ b/src/com/android/settings/treble/UseAlternativeAudioPolicyPreferenceController.java @@ -0,0 +1,59 @@ @@ -226,7 +226,7 @@ index 0000000000..fbc327cba0 +} diff --git a/src/com/android/settings/treble/UseAlternativeBacklightScalePreferenceController.java b/src/com/android/settings/treble/UseAlternativeBacklightScalePreferenceController.java new file mode 100644 -index 0000000000..bd9de82d90 +index 00000000000..bd9de82d906 --- /dev/null +++ b/src/com/android/settings/treble/UseAlternativeBacklightScalePreferenceController.java @@ -0,0 +1,53 @@ diff --git a/patches_treble/packages_apps_Settings/0003-TrebleSettings-IMS.patch b/patches_treble/packages_apps_Settings/0003-TrebleSettings-IMS.patch index 9a6fee2..e623047 100644 --- a/patches_treble/packages_apps_Settings/0003-TrebleSettings-IMS.patch +++ b/patches_treble/packages_apps_Settings/0003-TrebleSettings-IMS.patch @@ -1,4 +1,4 @@ -From 9cef4d5c64956f27e73320c6f5cc28201bd2692c Mon Sep 17 00:00:00 2001 +From fb208d5ca890f31bfff228836a548f3aacf3b061 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Tue, 11 Oct 2022 10:29:36 +0000 Subject: [PATCH 3/8] TrebleSettings: IMS @@ -16,22 +16,22 @@ Change-Id: Id7a12e150d4a3dc988f8ce1a888ad88443fa0ea4 create mode 100644 src/com/android/settings/treble/OverrideVolteAvailabilityPreferenceController.java diff --git a/Android.bp b/Android.bp -index 8cd7aa76aa..20efe42a50 100644 +index 7b7f7f42453..ab2d10cdb08 100644 --- a/Android.bp +++ b/Android.bp -@@ -105,6 +105,7 @@ android_library { +@@ -109,6 +109,7 @@ android_library { + "org.lineageos.platform.internal", "LineagePreferenceLib", "vendor.lineage.fastcharge-V1.0-java", - "SystemUISharedLib", + "android.hidl.manager-V1.0-java", ], plugins: ["androidx.room_room-compiler-plugin"], diff --git a/res/values/strings.xml b/res/values/strings.xml -index f799b4d0c7..1df0fe22f1 100644 +index 0961c045330..029308db35b 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6883,6 +6883,8 @@ +@@ -7186,6 +7186,8 @@ Audio Display @@ -40,7 +40,7 @@ index f799b4d0c7..1df0fe22f1 100644 Use alternative audio policy -@@ -6892,6 +6894,13 @@ +@@ -7195,6 +7197,13 @@ Screen resolution & refresh rate Use alternative backlight scale @@ -55,7 +55,7 @@ index f799b4d0c7..1df0fe22f1 100644 Network & internet diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 336137c95f..09e6bc5d00 100644 +index 336137c95f1..09e6bc5d006 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -32,4 +32,17 @@ @@ -78,7 +78,7 @@ index 336137c95f..09e6bc5d00 100644 diff --git a/src/com/android/settings/treble/InstallImsApkPreferenceController.java b/src/com/android/settings/treble/InstallImsApkPreferenceController.java new file mode 100644 -index 0000000000..6a63cbf1bf +index 00000000000..6a63cbf1bf3 --- /dev/null +++ b/src/com/android/settings/treble/InstallImsApkPreferenceController.java @@ -0,0 +1,209 @@ @@ -293,7 +293,7 @@ index 0000000000..6a63cbf1bf +} diff --git a/src/com/android/settings/treble/OverrideVolteAvailabilityPreferenceController.java b/src/com/android/settings/treble/OverrideVolteAvailabilityPreferenceController.java new file mode 100644 -index 0000000000..1ab12d3ca0 +index 00000000000..1ab12d3ca0e --- /dev/null +++ b/src/com/android/settings/treble/OverrideVolteAvailabilityPreferenceController.java @@ -0,0 +1,59 @@ @@ -357,7 +357,7 @@ index 0000000000..1ab12d3ca0 + +} diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java -index 5c1611c053..50e3eda8c6 100644 +index 5c1611c0534..50e3eda8c68 100644 --- a/src/com/android/settings/treble/TrebleSettings.java +++ b/src/com/android/settings/treble/TrebleSettings.java @@ -36,6 +36,8 @@ public class TrebleSettings extends DashboardFragment { diff --git a/patches_treble/packages_apps_Settings/0004-TrebleSettings-Disable-A2DP-offload.patch b/patches_treble/packages_apps_Settings/0004-TrebleSettings-Disable-A2DP-offload.patch index 4021282..00448e9 100644 --- a/patches_treble/packages_apps_Settings/0004-TrebleSettings-Disable-A2DP-offload.patch +++ b/patches_treble/packages_apps_Settings/0004-TrebleSettings-Disable-A2DP-offload.patch @@ -1,4 +1,4 @@ -From 75e694dddc0a06a097983f0a8674849f3cec5fb6 Mon Sep 17 00:00:00 2001 +From 7168689803383166446266171d8ac0e54c052b41 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 10 Dec 2022 12:04:37 +0000 Subject: [PATCH 4/8] TrebleSettings: Disable A2DP offload @@ -13,10 +13,10 @@ Change-Id: I737f49d146f83d96793f4436850529e3c528acbe create mode 100644 src/com/android/settings/treble/DisableA2DPOffloadPreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index 1df0fe22f1..8f1056da77 100644 +index 029308db35b..ccdc9e04c3c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6890,6 +6890,8 @@ +@@ -7193,6 +7193,8 @@ Use alternative audio policy Disable soundvolume effect @@ -26,7 +26,7 @@ index 1df0fe22f1..8f1056da77 100644 Screen resolution & refresh rate diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 09e6bc5d00..b58e7a1282 100644 +index 09e6bc5d006..b58e7a1282c 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -17,6 +17,10 @@ @@ -42,7 +42,7 @@ index 09e6bc5d00..b58e7a1282 100644 Date: Sat, 10 Dec 2022 14:16:50 +0000 Subject: [PATCH 5/8] TrebleSettings: Alternative audio jack detection @@ -13,10 +13,10 @@ Change-Id: I5d6d48f26a4a2134fd6edf996eca89a1fc42e6de create mode 100644 src/com/android/settings/treble/UseAlternativeAudioJackDetectionPreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index 8f1056da77..deb2cf9d77 100644 +index ccdc9e04c3c..62478ec1a6c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6892,6 +6892,8 @@ +@@ -7195,6 +7195,8 @@ Disable soundvolume effect Disable A2DP offload @@ -26,7 +26,7 @@ index 8f1056da77..deb2cf9d77 100644 Screen resolution & refresh rate diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index b58e7a1282..47097a14c7 100644 +index b58e7a1282c..47097a14c70 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -21,6 +21,10 @@ @@ -41,7 +41,7 @@ index b58e7a1282..47097a14c7 100644 Date: Sat, 17 Dec 2022 10:29:05 +0000 Subject: [PATCH 6/8] TrebleSettings: Override minimum brightness @@ -13,10 +13,10 @@ Change-Id: I6d621f7dd04b675b6e2e851a5e474dc9a9841eb0 create mode 100644 src/com/android/settings/treble/OverrideMinimumBrightnessPreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index deb2cf9d77..865a9c4f5f 100644 +index 62478ec1a6c..724b0393626 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6898,6 +6898,8 @@ +@@ -7201,6 +7201,8 @@ Screen resolution & refresh rate Use alternative backlight scale @@ -26,7 +26,7 @@ index deb2cf9d77..865a9c4f5f 100644 Install IMS APK diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 47097a14c7..5c18461b69 100644 +index 47097a14c70..5c18461b69f 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -38,6 +38,10 @@ @@ -42,7 +42,7 @@ index 47097a14c7..5c18461b69 100644 Date: Sat, 17 Dec 2022 11:00:38 +0000 Subject: [PATCH 7/8] TrebleSettings: Override navbar availability @@ -13,10 +13,10 @@ Change-Id: I7c771caf6274543fed23a8cc47411bf8c369ac2c create mode 100644 src/com/android/settings/treble/OverrideNavbarAvailabilityPreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index 865a9c4f5f..67d944d9bf 100644 +index 724b0393626..843fe444dc9 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6885,6 +6885,8 @@ +@@ -7188,6 +7188,8 @@ Display IMS @@ -25,7 +25,7 @@ index 865a9c4f5f..67d944d9bf 100644 Use alternative audio policy -@@ -6907,6 +6909,8 @@ +@@ -7210,6 +7212,8 @@ IMS APK installed. Reboot required. Override VoLTE availability @@ -35,7 +35,7 @@ index 865a9c4f5f..67d944d9bf 100644 Network & internet diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 5c18461b69..250a8ee75a 100644 +index 5c18461b69f..250a8ee75ae 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -57,4 +57,13 @@ @@ -54,7 +54,7 @@ index 5c18461b69..250a8ee75a 100644 diff --git a/src/com/android/settings/treble/OverrideNavbarAvailabilityPreferenceController.java b/src/com/android/settings/treble/OverrideNavbarAvailabilityPreferenceController.java new file mode 100644 -index 0000000000..d6baa33739 +index 00000000000..d6baa337397 --- /dev/null +++ b/src/com/android/settings/treble/OverrideNavbarAvailabilityPreferenceController.java @@ -0,0 +1,53 @@ @@ -112,7 +112,7 @@ index 0000000000..d6baa33739 + +} diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java -index 39a0e19972..634b7ce3ce 100644 +index 39a0e199726..634b7ce3ce1 100644 --- a/src/com/android/settings/treble/TrebleSettings.java +++ b/src/com/android/settings/treble/TrebleSettings.java @@ -41,6 +41,7 @@ public class TrebleSettings extends DashboardFragment { diff --git a/patches_treble/packages_apps_Settings/0008-TrebleSettings-Securize-on-demand.patch b/patches_treble/packages_apps_Settings/0008-TrebleSettings-Securize-on-demand.patch index 8b6478a..61905a6 100644 --- a/patches_treble/packages_apps_Settings/0008-TrebleSettings-Securize-on-demand.patch +++ b/patches_treble/packages_apps_Settings/0008-TrebleSettings-Securize-on-demand.patch @@ -1,4 +1,4 @@ -From 3b2b06803b579a2572ca1707aee7b56d1bfd0cff Mon Sep 17 00:00:00 2001 +From 2f6f5ee5ed0825f3075179b0d40bbee788792274 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Sat, 17 Dec 2022 14:30:52 +0000 Subject: [PATCH 8/8] TrebleSettings: Securize on-demand @@ -13,10 +13,10 @@ Change-Id: I76f54620277ccdc41636d74d1afa6330c382ce6a create mode 100644 src/com/android/settings/treble/SecurizePreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml -index 67d944d9bf..f034a9ff39 100644 +index 843fe444dc9..f7940dce85d 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml -@@ -6885,6 +6885,8 @@ +@@ -7188,6 +7188,8 @@ Display IMS @@ -25,7 +25,7 @@ index 67d944d9bf..f034a9ff39 100644 UI -@@ -6909,6 +6911,10 @@ +@@ -7212,6 +7214,10 @@ IMS APK installed. Reboot required. Override VoLTE availability @@ -37,7 +37,7 @@ index 67d944d9bf..f034a9ff39 100644 Override navigation bar availability diff --git a/res/xml/treble_settings.xml b/res/xml/treble_settings.xml -index 250a8ee75a..1f24352421 100644 +index 250a8ee75ae..1f24352421f 100644 --- a/res/xml/treble_settings.xml +++ b/res/xml/treble_settings.xml @@ -57,6 +57,16 @@ @@ -59,7 +59,7 @@ index 250a8ee75a..1f24352421 100644 diff --git a/src/com/android/settings/treble/SecurizePreferenceController.java b/src/com/android/settings/treble/SecurizePreferenceController.java new file mode 100644 -index 0000000000..0b59bbad81 +index 00000000000..0b59bbad81c --- /dev/null +++ b/src/com/android/settings/treble/SecurizePreferenceController.java @@ -0,0 +1,53 @@ @@ -117,7 +117,7 @@ index 0000000000..0b59bbad81 + +} diff --git a/src/com/android/settings/treble/TrebleSettings.java b/src/com/android/settings/treble/TrebleSettings.java -index 634b7ce3ce..149c18f231 100644 +index 634b7ce3ce1..149c18f2315 100644 --- a/src/com/android/settings/treble/TrebleSettings.java +++ b/src/com/android/settings/treble/TrebleSettings.java @@ -41,6 +41,7 @@ public class TrebleSettings extends DashboardFragment { diff --git a/patches_treble/packages_modules_Bluetooth/0001-audio_hal_interface-Optionally-use-sysbta-HAL.patch b/patches_treble/packages_modules_Bluetooth/0001-audio_hal_interface-Optionally-use-sysbta-HAL.patch index 1dca382..f8ee9fa 100644 --- a/patches_treble/packages_modules_Bluetooth/0001-audio_hal_interface-Optionally-use-sysbta-HAL.patch +++ b/patches_treble/packages_modules_Bluetooth/0001-audio_hal_interface-Optionally-use-sysbta-HAL.patch @@ -1,4 +1,4 @@ -From 706908e6a63595671e12bd34fb7f6ff2d2892cdb Mon Sep 17 00:00:00 2001 +From a128ba855ac44962c2bcacbe005dfe10a13ae74a Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Wed, 24 Aug 2022 15:45:18 -0400 Subject: [PATCH] audio_hal_interface: Optionally use sysbta HAL @@ -7,16 +7,16 @@ Required to support sysbta, our system-side bt audio implementation. Change-Id: I59973e6ec84c5923be8a7c67b36b2e237f000860 --- - system/audio_hal_interface/aidl/client_interface_aidl.cc | 8 ++++---- - system/audio_hal_interface/aidl/client_interface_aidl.h | 7 +++++++ - system/audio_hal_interface/hal_version_manager.cc | 9 ++++++++- + .../audio_hal_interface/aidl/client_interface_aidl.cc | 6 +++--- + .../audio_hal_interface/aidl/client_interface_aidl.h | 7 +++++++ + system/audio_hal_interface/hal_version_manager.cc | 11 +++++++++-- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/system/audio_hal_interface/aidl/client_interface_aidl.cc b/system/audio_hal_interface/aidl/client_interface_aidl.cc -index 897b891aa7..ed41627c3e 100644 +index 9faa725022..f6706d98f1 100644 --- a/system/audio_hal_interface/aidl/client_interface_aidl.cc +++ b/system/audio_hal_interface/aidl/client_interface_aidl.cc -@@ -56,7 +56,7 @@ BluetoothAudioClientInterface::BluetoothAudioClientInterface( +@@ -58,7 +58,7 @@ BluetoothAudioClientInterface::BluetoothAudioClientInterface( bool BluetoothAudioClientInterface::is_aidl_available() { return AServiceManager_isDeclared( @@ -25,7 +25,7 @@ index 897b891aa7..ed41627c3e 100644 } std::vector -@@ -72,7 +72,7 @@ BluetoothAudioClientInterface::GetAudioCapabilities(SessionType session_type) { +@@ -74,7 +74,7 @@ BluetoothAudioClientInterface::GetAudioCapabilities(SessionType session_type) { } auto provider_factory = IBluetoothAudioProviderFactory::fromBinder( ::ndk::SpAIBinder(AServiceManager_waitForService( @@ -34,7 +34,7 @@ index 897b891aa7..ed41627c3e 100644 if (provider_factory == nullptr) { LOG(ERROR) << __func__ << ", can't get capability from unknown factory"; -@@ -99,7 +99,7 @@ void BluetoothAudioClientInterface::FetchAudioProvider() { +@@ -101,7 +101,7 @@ void BluetoothAudioClientInterface::FetchAudioProvider() { } auto provider_factory = IBluetoothAudioProviderFactory::fromBinder( ::ndk::SpAIBinder(AServiceManager_waitForService( @@ -43,17 +43,8 @@ index 897b891aa7..ed41627c3e 100644 if (provider_factory == nullptr) { LOG(ERROR) << __func__ << ", can't get capability from unknown factory"; -@@ -266,7 +266,7 @@ int BluetoothAudioClientInterface::GetAidlInterfaceVersion() { - - auto provider_factory = IBluetoothAudioProviderFactory::fromBinder( - ::ndk::SpAIBinder(AServiceManager_waitForService( -- kDefaultAudioProviderFactoryInterface.c_str()))); -+ audioProviderFactoryInterface().c_str()))); - - if (provider_factory == nullptr) { - LOG(ERROR) << __func__ << ", can't get aidl version from unknown factory"; diff --git a/system/audio_hal_interface/aidl/client_interface_aidl.h b/system/audio_hal_interface/aidl/client_interface_aidl.h -index 8a40c1d7d7..6d962d3473 100644 +index 0dd9575acb..d28e8e46fb 100644 --- a/system/audio_hal_interface/aidl/client_interface_aidl.h +++ b/system/audio_hal_interface/aidl/client_interface_aidl.h @@ -28,6 +28,7 @@ @@ -64,7 +55,7 @@ index 8a40c1d7d7..6d962d3473 100644 #define BLUETOOTH_AUDIO_HAL_PROP_DISABLED \ "persist.bluetooth.bluetooth_audio_hal.disabled" -@@ -119,6 +120,12 @@ class BluetoothAudioClientInterface { +@@ -160,6 +161,12 @@ class BluetoothAudioClientInterface { // "android.hardware.bluetooth.audio.IBluetoothAudioProviderFactory/default"; static inline const std::string kDefaultAudioProviderFactoryInterface = std::string() + IBluetoothAudioProviderFactory::descriptor + "/default"; @@ -78,39 +69,48 @@ index 8a40c1d7d7..6d962d3473 100644 private: IBluetoothTransportInstance* transport_; diff --git a/system/audio_hal_interface/hal_version_manager.cc b/system/audio_hal_interface/hal_version_manager.cc -index a2c192f37d..c3d1cf35c2 100644 +index 275bbb067e..885e34f188 100644 --- a/system/audio_hal_interface/hal_version_manager.cc +++ b/system/audio_hal_interface/hal_version_manager.cc -@@ -24,6 +24,7 @@ - #include +@@ -25,6 +25,7 @@ #include "aidl/audio_aidl_interfaces.h" + #include "osi/include/log.h" +#include "osi/include/properties.h" namespace bluetooth { namespace audio { -@@ -33,6 +34,12 @@ using ::aidl::android::hardware::bluetooth::audio:: +@@ -34,6 +35,12 @@ using ::aidl::android::hardware::bluetooth::audio:: static const std::string kDefaultAudioProviderFactoryInterface = std::string() + IBluetoothAudioProviderFactory::descriptor + "/default"; +static const std::string kSystemAudioProviderFactoryInterface = + std::string() + IBluetoothAudioProviderFactory::descriptor + "/sysbta"; -+static inline const std::string audioProviderFactoryInterface() { ++static inline const std::string& audioProviderFactoryInterface() { + return osi_property_get_bool("persist.bluetooth.system_audio_hal.enabled", false) + ? kSystemAudioProviderFactoryInterface : kDefaultAudioProviderFactoryInterface; +} std::unique_ptr HalVersionManager::instance_ptr = std::make_unique(); -@@ -92,7 +99,7 @@ HalVersionManager::GetProvidersFactory_2_0() { +@@ -88,7 +95,7 @@ BluetoothAudioHalVersion GetAidlInterfaceVersion() { + auto provider_factory = IBluetoothAudioProviderFactory::fromBinder( + ::ndk::SpAIBinder(AServiceManager_waitForService( +- kDefaultAudioProviderFactoryInterface.c_str()))); ++ audioProviderFactoryInterface().c_str()))); + + if (provider_factory == nullptr) { + LOG_ERROR("Can't get aidl version from unknown factory"); +@@ -122,7 +129,7 @@ BluetoothAudioHalVersion GetAidlInterfaceVersion() { HalVersionManager::HalVersionManager() { + hal_transport_ = BluetoothAudioHalTransport::UNKNOWN; if (AServiceManager_checkService( - kDefaultAudioProviderFactoryInterface.c_str()) != nullptr) { + audioProviderFactoryInterface().c_str()) != nullptr) { - hal_version_ = BluetoothAudioHalVersion::VERSION_AIDL_V1; + hal_version_ = GetAidlInterfaceVersion(); + hal_transport_ = BluetoothAudioHalTransport::AIDL; return; - } -- 2.34.1 diff --git a/patches_treble/packages_modules_Connectivity/0001-Revert-drop-support-for-V-gsi-on-pixel-5-R-base-kern.patch b/patches_treble/packages_modules_Connectivity/0001-Revert-drop-support-for-V-gsi-on-pixel-5-R-base-kern.patch new file mode 100644 index 0000000..a52c1a4 --- /dev/null +++ b/patches_treble/packages_modules_Connectivity/0001-Revert-drop-support-for-V-gsi-on-pixel-5-R-base-kern.patch @@ -0,0 +1,44 @@ +From 9eed8d4e6f8858cd5214e8e2d57475b11ef29493 Mon Sep 17 00:00:00 2001 +From: Peter Cai +Date: Sat, 16 Mar 2024 15:27:27 -0400 +Subject: [PATCH] Revert "drop support for V gsi on pixel 5 R base kernel" + +This reverts commit bbbd18a71368a80f689b924dcf82062c2ee351b2. +--- + ..._android_server_connectivity_ClatCoordinator.cpp | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +diff --git a/service/jni/com_android_server_connectivity_ClatCoordinator.cpp b/service/jni/com_android_server_connectivity_ClatCoordinator.cpp +index c125bd6479..787ef8fd69 100644 +--- a/service/jni/com_android_server_connectivity_ClatCoordinator.cpp ++++ b/service/jni/com_android_server_connectivity_ClatCoordinator.cpp +@@ -90,6 +90,11 @@ static void verifyPerms(const char * const path, + + #undef ALOGF + ++bool isGsiImage() { ++ // this implementation matches 2 other places in the codebase (same function name too) ++ return !access("/system/system_ext/etc/init/init.gsi.rc", F_OK); ++} ++ + static const char* kClatdDir = "/apex/com.android.tethering/bin/for-system"; + static const char* kClatdBin = "/apex/com.android.tethering/bin/for-system/clatd"; + +@@ -130,6 +135,14 @@ static void verifyClatPerms() { + + #undef V2 + ++ // HACK: Some old vendor kernels lack ~5.10 backport of 'bpffs selinux genfscon' support. ++ // This is *NOT* supported, but let's allow, at least for now, U+ GSI to boot on them. ++ // (without this hack pixel5 R vendor + U gsi breaks) ++ if (isGsiImage() && !bpf::isAtLeastKernelVersion(5, 10, 0)) { ++ ALOGE("GSI with *BAD* pre-5.10 kernel lacking bpffs selinux genfscon support."); ++ return; ++ } ++ + if (fatal) abort(); + } + +-- +2.34.1 + diff --git a/patches_treble/system_bpf/0001-Revert-detect-inability-to-write-to-index-0-of-bpf-m.patch b/patches_treble/system_bpf/0001-Revert-detect-inability-to-write-to-index-0-of-bpf-m.patch deleted file mode 100644 index 48bb760..0000000 --- a/patches_treble/system_bpf/0001-Revert-detect-inability-to-write-to-index-0-of-bpf-m.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 04eb0f02934f58c1c842da1ea365275ba03c5b58 Mon Sep 17 00:00:00 2001 -From: Andy CrossGate Yan -Date: Wed, 19 Oct 2022 02:20:05 +0000 -Subject: [PATCH] Revert "detect inability to write to index != 0 of bpf map - array" - -This reverts commit ead9d83423877458023056f6ccf9390950d6726f. ---- - bpfloader/BpfLoader.cpp | 9 --------- - 1 file changed, 9 deletions(-) - -diff --git a/bpfloader/BpfLoader.cpp b/bpfloader/BpfLoader.cpp -index 5cd80b7..bc72811 100644 ---- a/bpfloader/BpfLoader.cpp -+++ b/bpfloader/BpfLoader.cpp -@@ -199,15 +199,6 @@ int main(int argc, char** argv) { - } - } - -- int key = 1; -- int value = 123; -- android::base::unique_fd map( -- android::bpf::createMap(BPF_MAP_TYPE_ARRAY, sizeof(key), sizeof(value), 2, 0)); -- if (android::bpf::writeToMapEntry(map, &key, &value, BPF_ANY)) { -- ALOGE("Critical kernel bug - failure to write into index 1 of 2 element bpf map array."); -- return 1; -- } -- - if (android::base::SetProperty("bpf.progs_loaded", "1") == false) { - ALOGE("Failed to set bpf.progs_loaded property"); - return 1; --- -2.25.1 - diff --git a/patches_treble/system_core/0001-Make-xbin-and-su-executable-by-other.patch b/patches_treble/system_core/0001-Make-xbin-and-su-executable-by-other.patch index 3f44b18..d696828 100644 --- a/patches_treble/system_core/0001-Make-xbin-and-su-executable-by-other.patch +++ b/patches_treble/system_core/0001-Make-xbin-and-su-executable-by-other.patch @@ -1,4 +1,4 @@ -From cd56da986fdf17fc6d5d82d6cb553a8444093099 Mon Sep 17 00:00:00 2001 +From 38e56ab78cdfdbe23de14570993bf26f94d9967a Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Mon, 26 Sep 2022 14:41:41 +0000 Subject: [PATCH 1/4] Make xbin and su executable by other @@ -11,10 +11,10 @@ Change-Id: I5304b787ce4602036904a373a409bb08f8f969de 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libcutils/fs_config.cpp b/libcutils/fs_config.cpp -index f90a1bc3c..ef35e0588 100644 +index 919be2ff2..809237bc9 100644 --- a/libcutils/fs_config.cpp +++ b/libcutils/fs_config.cpp -@@ -87,7 +87,7 @@ static const struct fs_path_config android_dirs[] = { +@@ -83,7 +83,7 @@ static const struct fs_path_config android_dirs[] = { { 00751, AID_ROOT, AID_SHELL, 0, "system/bin" }, { 00755, AID_ROOT, AID_ROOT, 0, "system/etc/ppp" }, { 00755, AID_ROOT, AID_SHELL, 0, "system/vendor" }, @@ -23,7 +23,7 @@ index f90a1bc3c..ef35e0588 100644 { 00751, AID_ROOT, AID_SHELL, 0, "system/apex/*/bin" }, { 00750, AID_ROOT, AID_SYSTEM, 0, "system_ext/apex/com.android.tethering/bin/for-system" }, { 00751, AID_ROOT, AID_SHELL, 0, "system_ext/bin" }, -@@ -192,7 +192,7 @@ static const struct fs_path_config android_files[] = { +@@ -188,7 +188,7 @@ static const struct fs_path_config android_files[] = { // the following two files are INTENTIONALLY set-uid, but they // are NOT included on user builds. { 06755, AID_ROOT, AID_ROOT, 0, "system/xbin/procmem" }, diff --git a/patches_treble/system_core/0002-Restore-sbin-for-Magisk-compatibility.patch b/patches_treble/system_core/0002-Restore-sbin-for-Magisk-compatibility.patch index 068c4e5..db5f0e2 100644 --- a/patches_treble/system_core/0002-Restore-sbin-for-Magisk-compatibility.patch +++ b/patches_treble/system_core/0002-Restore-sbin-for-Magisk-compatibility.patch @@ -1,4 +1,4 @@ -From 4d4585b2f4f0f7dd1b6ae28cae77b8340d9e0bae Mon Sep 17 00:00:00 2001 +From a088bdd1d30e127815bd25ffd89a9ba858c20662 Mon Sep 17 00:00:00 2001 From: Victor Bo Date: Wed, 3 Mar 2021 06:31:17 -0500 Subject: [PATCH 2/4] Restore /sbin for Magisk compatibility @@ -30,10 +30,10 @@ index 0a534a2bd..81150a0fa 100644 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/product_services.img) $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/product_services) diff --git a/libcutils/fs_config.cpp b/libcutils/fs_config.cpp -index ef35e0588..76174ce1c 100644 +index 809237bc9..584e513f8 100644 --- a/libcutils/fs_config.cpp +++ b/libcutils/fs_config.cpp -@@ -80,6 +80,7 @@ static const struct fs_path_config android_dirs[] = { +@@ -76,6 +76,7 @@ static const struct fs_path_config android_dirs[] = { { 00771, AID_SYSTEM, AID_SYSTEM, 0, "data" }, { 00755, AID_ROOT, AID_SYSTEM, 0, "mnt" }, { 00751, AID_ROOT, AID_SHELL, 0, "product/bin" }, @@ -41,7 +41,7 @@ index ef35e0588..76174ce1c 100644 { 00751, AID_ROOT, AID_SHELL, 0, "product/apex/*/bin" }, { 00777, AID_ROOT, AID_ROOT, 0, "sdcard" }, { 00751, AID_ROOT, AID_SDCARD_R, 0, "storage" }, -@@ -168,6 +169,7 @@ static const struct fs_path_config android_files[] = { +@@ -164,6 +165,7 @@ static const struct fs_path_config android_files[] = { { 00600, AID_ROOT, AID_ROOT, 0, "system_ext/build.prop" }, { 00444, AID_ROOT, AID_ROOT, 0, system_ext_conf_dir + 1 }, { 00444, AID_ROOT, AID_ROOT, 0, system_ext_conf_file + 1 }, @@ -49,7 +49,7 @@ index ef35e0588..76174ce1c 100644 { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/crash_dump32" }, { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/crash_dump64" }, { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/debuggerd" }, -@@ -222,6 +224,7 @@ static const struct fs_path_config android_files[] = { +@@ -219,6 +221,7 @@ static const struct fs_path_config android_files[] = { { 00750, AID_ROOT, AID_SHELL, 0, "init*" }, { 00755, AID_ROOT, AID_SHELL, 0, "odm/bin/*" }, { 00755, AID_ROOT, AID_SHELL, 0, "product/bin/*" }, @@ -58,20 +58,20 @@ index ef35e0588..76174ce1c 100644 { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/*" }, { 00755, AID_ROOT, AID_SHELL, 0, "system/xbin/*" }, diff --git a/rootdir/Android.mk b/rootdir/Android.mk -index 3362872c0..1b686c38f 100644 +index 7deb17324..aeeaad496 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk -@@ -91,7 +91,7 @@ endif +@@ -96,7 +96,7 @@ endif # # create some directories (some are mount points) and symlinks LOCAL_POST_INSTALL_CMD := mkdir -p $(addprefix $(TARGET_ROOT_OUT)/, \ -- dev proc sys system data data_mirror odm oem acct config storage mnt apex debug_ramdisk \ -+ sbin dev proc sys system data data_mirror odm oem acct config storage mnt apex debug_ramdisk \ +- dev proc sys system data data_mirror odm oem acct config storage mnt apex bootstrap-apex debug_ramdisk \ ++ sbin dev proc sys system data data_mirror odm oem acct config storage mnt apex bootstrap-apex debug_ramdisk \ linkerconfig second_stage_resources postinstall $(BOARD_ROOT_EXTRA_FOLDERS)); \ ln -sf /system/bin $(TARGET_ROOT_OUT)/bin; \ ln -sf /system/etc $(TARGET_ROOT_OUT)/etc; \ diff --git a/rootdir/init.environ.rc.in b/rootdir/init.environ.rc.in -index bf6e986c4..090fa5a78 100644 +index 7ba1f46e7..f54aa60f7 100644 --- a/rootdir/init.environ.rc.in +++ b/rootdir/init.environ.rc.in @@ -10,6 +10,7 @@ on early-init diff --git a/patches_treble/system_core/0003-init-Do-not-start-console-service-when-debuggable.patch b/patches_treble/system_core/0003-init-Do-not-start-console-service-when-debuggable.patch index a9c5166..a743236 100644 --- a/patches_treble/system_core/0003-init-Do-not-start-console-service-when-debuggable.patch +++ b/patches_treble/system_core/0003-init-Do-not-start-console-service-when-debuggable.patch @@ -1,4 +1,4 @@ -From 0cf9d044459a3e0259917dca782103126b0c2d42 Mon Sep 17 00:00:00 2001 +From 9665effe383d8caafb1114b28dfaca50924714a6 Mon Sep 17 00:00:00 2001 From: Isaac Chen Date: Wed, 23 Jun 2021 13:07:30 +0800 Subject: [PATCH 3/4] init: Do not start console service when debuggable @@ -13,10 +13,10 @@ Change-Id: I34cfd6b42d3b9aee4b3e63181480cfb8b1255f29 1 file changed, 3 deletions(-) diff --git a/rootdir/init.rc b/rootdir/init.rc -index 1e6918d00..8b48a9c87 100644 +index 317f80908..9dc09ea4a 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc -@@ -1312,9 +1312,6 @@ on property:ro.debuggable=1 +@@ -1290,9 +1290,6 @@ on property:ro.debuggable=1 # Give reads to anyone for the accessibility trace folder on debug builds. chmod 0775 /data/misc/a11ytrace diff --git a/patches_treble/system_core/0004-Don-t-abandon-creating-property-tree-if-there-is-a-c.patch b/patches_treble/system_core/0004-Don-t-abandon-creating-property-tree-if-there-is-a-c.patch index 6827688..ea391d1 100644 --- a/patches_treble/system_core/0004-Don-t-abandon-creating-property-tree-if-there-is-a-c.patch +++ b/patches_treble/system_core/0004-Don-t-abandon-creating-property-tree-if-there-is-a-c.patch @@ -1,4 +1,4 @@ -From a27092d9b56b807b66f121321e9242a9a4db834f Mon Sep 17 00:00:00 2001 +From a37a2492ba4f0e37bec5a76852db55856ae81427 Mon Sep 17 00:00:00 2001 From: Pierre-Hugues Husson Date: Sun, 18 Oct 2020 18:14:47 +0200 Subject: [PATCH 4/4] Don't abandon creating property tree if there is a diff --git a/patches_treble/vendor_hardware_overlay/0001-Exclude-TrebleApp-co.patch b/patches_treble/vendor_hardware_overlay/0001-Exclude-TrebleApp-co.patch index ac9eb3a..c29d23d 100644 --- a/patches_treble/vendor_hardware_overlay/0001-Exclude-TrebleApp-co.patch +++ b/patches_treble/vendor_hardware_overlay/0001-Exclude-TrebleApp-co.patch @@ -1,4 +1,4 @@ -From 6ac3e22846c212278b9870f045bb9491c8f5e3a3 Mon Sep 17 00:00:00 2001 +From f2a436e690f020d1bf730283283b25fb99882b01 Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Wed, 21 Sep 2022 13:36:07 +0000 Subject: [PATCH 1/2] Exclude TrebleApp & co. @@ -9,7 +9,7 @@ Change-Id: Ieb62801a79c6e015634fd58b654c63c1de5aef7e 1 file changed, 3 deletions(-) diff --git a/overlay.mk b/overlay.mk -index a1de82b..a7fc18a 100644 +index 37a9923..2d2021e 100644 --- a/overlay.mk +++ b/overlay.mk @@ -1,7 +1,4 @@ @@ -17,9 +17,9 @@ index a1de82b..a7fc18a 100644 - HardwareOverlayPicker \ - QtiAudio \ - TrebleApp \ + treble-overlay-Hisense-HLTE556N \ treble-overlay-NavBar \ treble-overlay-NightMode \ - treble-overlay-SystemUI-FalseLocks \ -- 2.34.1 diff --git a/patches_treble/vendor_hardware_overlay/0002-Enable-IMS-overlays-statically-on-QCOM-MTK-devices.patch b/patches_treble/vendor_hardware_overlay/0002-Enable-IMS-overlays-statically-on-QCOM-MTK-devices.patch index d1a8e32..10b9329 100644 --- a/patches_treble/vendor_hardware_overlay/0002-Enable-IMS-overlays-statically-on-QCOM-MTK-devices.patch +++ b/patches_treble/vendor_hardware_overlay/0002-Enable-IMS-overlays-statically-on-QCOM-MTK-devices.patch @@ -1,4 +1,4 @@ -From ea0f9443f862e2059cef4c3f8f64707d1d3ff46c Mon Sep 17 00:00:00 2001 +From b37a53bfddd844a62673be768c3a6352886e617f Mon Sep 17 00:00:00 2001 From: Andy CrossGate Yan Date: Tue, 11 Oct 2022 10:53:34 +0000 Subject: [PATCH 2/2] Enable IMS overlays statically on QCOM/MTK devices