Commit Graph

147940 Commits

Author SHA1 Message Date
Pranav Vashi
e7273c3233 Settings: Prevent NPE in LoadingViewController
Log:

10-26 18:12:35.963 22151 22151 E AndroidRuntime: FATAL EXCEPTION: main
10-26 18:12:35.963 22151 22151 E AndroidRuntime: Process: com.android.settings, PID: 22151
10-26 18:12:35.963 22151 22151 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.clearAnimation()' on a null object reference
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.settings.widget.LoadingViewController.setViewShown(LoadingViewController.java:154)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.settings.widget.LoadingViewController.handleLoadingContainer(LoadingViewController.java:107)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.settings.SettingsPreferenceFragment.setLoading(SettingsPreferenceFragment.java:226)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.settings.wifi.tether.WifiTetherSettings.onRestartingChanged(WifiTetherSettings.java:340)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.settings.wifi.tether.WifiTetherSettings$$ExternalSyntheticLambda5.onChanged(R8$$SyntheticClass:0)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:146)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LiveData$ObserverWrapper.activeStateChanged(LiveData.java:483)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LiveData$LifecycleBoundObserver.onStateChanged(LiveData.java:440)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.jvm.kt:320)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LifecycleRegistry.forwardPass(LifecycleRegistry.jvm.kt:257)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.jvm.kt:293)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.jvm.kt:142)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.jvm.kt:124)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.Fragment.performStart(Fragment.java:3193)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentStateManager.start(FragmentStateManager.java:640)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:296)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:114)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1663)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3247)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentManager.dispatchStart(FragmentManager.java:3172)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentController.dispatchStart(FragmentController.java:274)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:358)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1705)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.Activity.performStart(Activity.java:9045)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.ActivityThread.handleStartActivity(ActivityThread.java:4074)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:270)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:250)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:222)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:107)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:81)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2637)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:107)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:232)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:317)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:8751)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
10-26 18:12:35.963 22151 22151 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:892)

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
Pranav Vashi
eb7c801c2e Settings: Safeguard ringtone pref against faulty gapps
* Gapps which replaces AOSP sound picker and do not overlay config, crashes this preference.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
Pranav Vashi
4ada6f56ff Settings: Fix crash with face lock preference for limited access users
Ref: https://xdaforums.com/t/rom-14-0-official-clover-kernelsu-crdroid-14-0-for-xiaomi-mi-pad-4-plus.4675646/post-89634146

Crash log:

07-29 19:55:26.011 E/AndroidRuntime(17429): FATAL EXCEPTION: main
07-29 19:55:26.011 E/AndroidRuntime(17429): Process: com.android.settings, PID: 17429
07-29 19:55:26.011 E/AndroidRuntime(17429): java.lang.RuntimeException: Unable to resume activity {com.android.settings/com.android.settings.SubSettings}: java.lang.ClassCastException: androidx.preference.SwitchPreferenceCompat cannot be cast to com.android.settingslib.RestrictedSwitchPreference
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5244)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:5277)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:57)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:60)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:282)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:150)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:93)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2595)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.os.Handler.dispatchMessage(Handler.java:107)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.os.Looper.loopOnce(Looper.java:232)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.os.Looper.loop(Looper.java:317)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.ActivityThread.main(ActivityThread.java:8594)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at java.lang.reflect.Method.invoke(Native Method)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:583)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:878)
07-29 19:55:26.011 E/AndroidRuntime(17429): Caused by: java.lang.ClassCastException: androidx.preference.SwitchPreferenceCompat cannot be cast to com.android.settingslib.RestrictedSwitchPreference
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at com.android.settings.biometrics.face.FaceSettingsLockscreenBypassPreferenceController.updateState(FaceSettingsLockscreenBypassPreferenceController.java:76)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at com.android.settings.dashboard.DashboardFragment.updatePreferenceStates(DashboardFragment.java:414)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at com.android.settings.dashboard.DashboardFragment.onResume(DashboardFragment.java:242)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.Fragment.performResume(Fragment.java:3206)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:658)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:302)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:114)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1613)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3197)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentManager.dispatchResume(FragmentManager.java:3129)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentController.dispatchResume(FragmentController.java:285)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentActivity.onResumeFragments(FragmentActivity.java:333)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at androidx.fragment.app.FragmentActivity.onPostResume(FragmentActivity.java:322)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.Activity.performResume(Activity.java:9163)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5234)
07-29 19:55:26.011 E/AndroidRuntime(17429): 	... 14 more

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
Chris Crump
08624d528c Settings: Import missing Face Unlock animation
Change-Id: I05fa784d9f7f978be9f5944900a97ad7df19f59e
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
Adithya R
e76c1716dc Settings: Fix loading iconpack-based Wellbeing icon
Wellbeing apk still provides Android 11 style settings icon
when an icon pack is set. It consists of a layer-list with
circle shape and drawable, so fetch the drawable to make
it work with Android 12 settings.

Change-Id: I78be2db9dc8ca262e61fdb13b93da007c3a6eb81
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
cjybyjk
540bf3b652 AppVolumeSlice: Allow querying icon of apps installed by any user
Test: Launch an app from work profile, play some music and see
      the app icon can now be properly displayed in the panel.
Change-Id: I76db52d78ddf0850a4229b5bd3557829d0cdbf98
Signed-off-by: cjybyjk <cjybyjk@zjnu.edu.cn>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09:00
cjybyjk
c7a35a8bc1 Settings: support per-app volume [3/3]
Change-Id: I3e72a4b0fda68a5cd1e9a35fc161a1d7ddae6d7e

Signed-off-by: AnierinB <anierin@evolution-x.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
Cristhian Zeas
b868ac34e0 Add the rest of Cloudflare and Quad9 Private DNS options 2025-12-10 00:41:25 +09:00
Steve Kondik
2c23d3060e Settings: Use seekbar to allow setting arbitrary animation values
frap129: Reworked for Pie, set default scale to 0.5f, and improved
the preference summaries so they match AOSP while keeping translations.

Change-Id: I29d89e532d07a325f6e568b21e4da4ce7e5761ac
Signed-off-by: Joe Maples <joe@frap129.org>
[jaysonedson: Fix fc when not using English and preference]
Signed-off-by: Jason Edson <jaysonedson@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
cjybyjk
edfa749d17 Settings: add TextView for summary into SeekBarDialogPreference
Signed-off-by: cjybyjk <cjybyjk@zjnu.edu.cn>
Change-Id: Icff728749c3e597a4127d77646bdf3a742c35d83
Signed-off-by: Dmitrii <bankersenator@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
Danny Lin
e7d38634a2 Settings: Fix invalid private DNS help text if URI is missing
AOSP does not have help URIs configured, so there is no relevant content
to show in the private DNS dialog's help text section, and the preference
controller never sets the content of the help text view. This results in
a random irrelevant message related to Bluetooth audio being shown in
the dialog: "Gray-out means not supported by phone or headset"

This is caused by the private DNS dialog sharing the
preference_widget_dialog_summary snippet with Bluetooth A2DP codec
settings. To fix this issue, we can hide the help text view entirely if
there is no help URI defined.

Change-Id: Ie74a1be347351a6db68412321d0c68f3138fae6b
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
El Dainosor
f5b6d8a224 Settings: Avoid enforcing weird backgrounds
Enforcing windowBackground on places they shouldn't be causes issues when applying background there.
Or another kind of issues, like full transparency on clear themes, or white bg on settings home categories.

Credits goes to Genkzsz11 and the whole Corvus-ROM team for finding some of the root issues on this commit:
2b595f3d56

Change-Id: Iacd5b2e369ba9089f5522ff637427b31dcdd69b7
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
minaripenguin37
85c24e4cea Settings: Add more DNS providers
Co-authored-by: Hưng Phan <phandinhhungvp2001@gmail.com>
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
Adam Lawson
daac5ad57c Settings: Add AdGuard DNS as a private DNS Provider
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
DarkJoker360
45939de619 Settings: Add a toggle to force LTE_CA
Change-Id: I017be698dc6c438edf2236df7c0125c05202bf3b
Signed-off-by: DarkJoker360 <simoespo159@gmail.com>
2025-12-10 00:41:25 +09:00
Ido Ben-Hur
c09ba4c11f Settings: Allow disabling color inversion support [2/2]
Via an overlay
Some kernels won't support that no more

Change-Id: I4f63f36a0134aa612609fe6e574046e01baf1df3
2025-12-10 00:41:25 +09:00
minaripenguin
5154710c9b Settings: Properly handle ASI and WallpaperPreference for gms and vanilla builds
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
2025-12-10 00:41:25 +09:00
Adithya R
fb08c30d9b Settings: Allow disabling clipboard overlay [2/2]
Change-Id: Icf48949c9fdd44f6412d1491e105e22d80fda131
2025-12-10 00:41:25 +09:00
Pranav Vashi
10ca41a9f6 Add deep sleep preference controller [2/2]
Change-Id: If270186b7788d95bfb4f555c0bc6f7eb3367e95f
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
someone5678
cd266c38ea Settings: Allow disabling of screenshot shutter sound [2/2]
Change-Id: If214da9416f673f3a9b806d0c49dbcbefb168f10
2025-12-10 00:41:25 +09:00
Chris Crump
b7db5c4d60 Add Face Unlock with ParanoidSense
Based on AOSPA's implementation and adapted by @ghostrider-reborn

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:25 +09:00
someone5678
53b71e539d Settings: Make all user apps cloneable
* Filter system apps and overlays
* Include pre-defined apps in com.android.internal.R.array.cloneable_apps

Change-Id: Ia08a1095cd2aec9c6d77d055f1344e57225a44d5
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:25 +09:00
Pranav Vashi
9051e97b8c Settings: Use font configs instead fonts directly
Change-Id: I2c93301a7a9aa640278c62912ee6a54dbe29589c
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:25 +09:00
SagarMakhar
ddcf4dad63 Settings: Add Glide library
[neobuddy89: Updated to 4.16.0]

Change-Id: Icd8f4d35251e9a3fe69387de7bb00bd53326c2c5
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:25 +09:00
Mazda--
530e4adc08 Developer options toast insulter
Inspired by the Bash insulter written by hkbakke

https://www.ostechnix.com/bash-insulter-script-insults-user-typing-wrong-command/

Change-Id: I48d52de431de1eedf7a965a83a7dcb464ef3ed3a
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:25 +09:00
Alex
ce4586c514 Settings: Change kernel preference behavior
Before you could only click once to see the full kernel version and if
you wanted it to go back to the short version, you had to exit the fragment.

Now you can click between the two (short and long).

Change-Id: I6f89d6b145d5cc7b9cca6febc3651904b98da80c
Signed-off-by: Joey Huab <joey@evolution-x.org>
2025-12-10 00:41:25 +09:00
xoomdev
1c07f1725a Settings: Show full proc/version information
patch set 2: view unformatted kernel version on clicking
  the formatted kernel version

[ Stallix - Evo X ]

* Adapted for KernelVersionPreferenceController on Pie

Change-Id: I2b211fb72c25cc119f2a464b04821fcef77a8908
Signed-off-by: Arghya Chanda <arghyac35@gmail.com>
Signed-off-by: SagarMakhar <sagarmakhar@gmail.com>
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:25 +09:00
someone5678
7713ff29ac fixup! Add option to reset network settings to factory
* Move to SwitchPreferenceCompat

Change-Id: Ic6f4106b0bd91e8ebb978ae39d1c94a2eacaa039
2025-12-10 00:41:25 +09:00
Michael Bestas
f07f272d14 fixup! Add toggle to enable ADB root
Change-Id: I15bb409dd087cfd9c89a6f579c7c69d162516299
2025-12-10 00:41:25 +09:00
AnierinB
f4515f015b Settings: Initial Evolution X rebrand
Co-authored-by: AnierinB <anierin@evolution-x.org>
Co-authored-by: Jackeagle <jackeagle102@gmail.com>
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: ganeshi4u <ganeshvarmai4u@gmail.com>
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-12-10 00:41:11 +09:00
Michael Bestas
cee9137640 Merge tag 'android-security-16.0.0_r3' into staging/lineage-23.0_merge-android-security-16.0.0_r3
Android security 16.0.0 release 3

* tag 'android-security-16.0.0_r3':
  Import translations. DO NOT MERGE ANYWHERE
  Backport BT pairing dialog changes
  [nfc] Fix string injection in default payment app selector
  Add check to prevent privilege escalation from trampoline added in change Ie469c47005afb941f5646a2f790736362c23c697.
  Hide sensistive content from locked profiles
  Prevent SettingsSliceProvider from accessing unused packages
  Ignore face settings extras when called by an external package.
  startActivityForResult with earlier new Intent
  Hide notification content in history
  Use correct API to get calling package name in CredentialStorage
  Drop PendingIntent extras from external packages during enrollment.
  Do not enable the Content Protection toggle for non-admin users.
  Add ComponentName explicitly to make sure arbitary intents aren't launched from Settings.
  AppRestrictions - use vetted component
  Add battery health tip

Change-Id: Ifbcbfcc5e95e3b69085c9c7f795914ec21b4d0a9
2025-12-07 21:01:34 +02:00
Bruno Martins
cccc2e98a6 Display: Assign a key to color preference category
All other categories here have a key assigned, which is quite
useful to allow injecting preferences into the proper group.

Test: m
Change-Id: I56b161c98eb7f669703f46d73f56e081ebf18558
2025-12-03 22:44:23 +00:00
Bruno Martins
99201643e5 Revert "Settings: Add livedisplay preference screen"
This reverts commit 7e1173dcdf.

Reason for revert: Injected via IA.

Change-Id: I47cb77c62da7171de95f1a320cc274591f7481df
2025-12-03 22:44:16 +00:00
LineageOS Infra
fd2dbf2798 Automatic translation import
Change-Id: I830c9e783f38e7cc87a30b48bfc4e1e70aad22e2
2025-12-01 14:53:18 +00:00
Michael Bestas
f08363f454 fixup! Settings: Add toggle for heads up notifications
Change-Id: I06fc78b226681dcc94532d1fd438a3477e1a6d8c
2025-11-12 23:09:45 +02:00
Android Build Coastguard Worker
7e67636620 Merge cherrypicks of ['googleplex-android-review.googlesource.com/33849811', 'googleplex-android-review.googlesource.com/34329736', 'googleplex-android-review.googlesource.com/35238460', 'googleplex-android-review.googlesource.com/35130627', 'googleplex-android-review.googlesource.com/34714592', 'googleplex-android-review.googlesource.com/36030621'] into 25Q2-release.
Change-Id: I3ac44e319ff0b9c0e854340ea865feeec646cb2a
2025-10-10 14:29:39 -07:00
Bill Yi
e62ac1ecd3 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import

BUG: 236134775,236134583
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:79ef6210b09cff3c9a15b56a07c3bc0b1241f0e0
Merged-In: Ibe220851e7ca9f3a5362ba0f6dc1b41820d5815a
Change-Id: Ibe220851e7ca9f3a5362ba0f6dc1b41820d5815a
2025-10-10 14:23:35 -07:00
Haijie Hong
8ec6581ae7 Backport BT pairing dialog changes
This is a combination of two commits against b/409868905, merged for
backport convenience.  It updates the string and button style for the BT
pairing dialog.

Bug: 236134583
Bug: 236134775
Test: local tested
Flag: EXEMPT minor style update
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:22378fd5a1bb2ca8d63f5df4e47c0af218c66a57
Merged-In: Icd9f509b5363b3ec3900738e21486e54d4e66e4b
Change-Id: Icd9f509b5363b3ec3900738e21486e54d4e66e4b
2025-10-10 14:23:05 -07:00
James Eidson
aa744e8988 [nfc] Fix string injection in default payment app selector
Backwards compatible port of ag/35084316

Bug: 429417453
Test: Manually by installing settings app
Flag: EXEMPT security fix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:6c723a4361950e8e43cc5caf67455bd2f00911d1)
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:b04265c1b84104884654d4957c5fb3a8ac84bc00
Merged-In: I670774a5efa6f543a5e1e06798a5d6ebb1c48c1d
Change-Id: I670774a5efa6f543a5e1e06798a5d6ebb1c48c1d
2025-10-10 14:22:38 -07:00
Joe Bolinger
83447688f8 Add check to prevent privilege escalation from trampoline added in change Ie469c47005afb941f5646a2f790736362c23c697.
Add additional check in enrollment base class.

Flag: EXEMPT CVE_FIX
Bug: 418774489
Test: atest FaceEnrollTest FaceEnrollIntroductionTest
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c07d03e5ef9ff05f34b6358440af6770044579ae)
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:e0476f87117c1b689b96c9a37ac12162d79c6cf6
Merged-In: I49f4a980a0c9ed80cc2e370a42bd60425d018a4c
Change-Id: I49f4a980a0c9ed80cc2e370a42bd60425d018a4c
2025-10-10 14:22:09 -07:00
Julia Reynolds
596c7b9911 Hide sensistive content from locked profiles
Test: manual
Flag: EXEMPT bug fix
Bug: 396666065
(cherry picked from commit b1bfda5a03c6d21a16da0de2eb77340536400ca6)
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:0c2075c139445d83491ee9ad9991e55e7b32ff6b
Merged-In: Ie7705a1ceea54203585c3b3737d0bada68aa1469
Change-Id: Ie7705a1ceea54203585c3b3737d0bada68aa1469
2025-10-10 14:21:41 -07:00
Mill Chen
586f8dedd8 Prevent SettingsSliceProvider from accessing unused packages
DISABLE_TOPIC_PROTECTOR

Bug: 388034510
Test: adb shell cmd slice get-permissions com.android.settings.slices
      atest SettingsSliceProviderTest
Flag: EXEMPT security issue
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:fc32bd01fa26a116c4217fec157be43f01633add
Merged-In: Ia655fbb9cb46f192559b82f957e3b2f0dd86946c
Change-Id: Ia655fbb9cb46f192559b82f957e3b2f0dd86946c
2025-10-10 14:21:13 -07:00
LuK1337
8fb73c62d4 Settings: Switch back to udfps_enroll_enrolling_non_scroll layout
New one seems halfbaked? The UDFPS icon is misaligned when using it and
progress circle is missing.

Change-Id: I19d0a1ff973d79381f0f315469c823afedde9c02
2025-10-04 23:45:21 +02:00
LuK1337
56a70f85b4 Settings: Disable clipping in biometrics_glif_content
This is required for devices with UDFPS sensors that are very low.

Change-Id: Iec0c4f27cab6999b617a26b4d76bfaa39a90d922
2025-10-04 23:41:12 +02:00
LineageOS Infra
b599b32aca Automatic translation import
Change-Id: Ic4ae60059ec8181660d16c3d5cc67fecdda6aa51
2025-09-24 20:06:47 +00:00
Michael Bestas
f678426e9e Merge branch 'android16-security-release' of https://android.googlesource.com/platform/packages/apps/Settings into lineage-23.0
* 'android16-security-release' of https://android.googlesource.com/platform/packages/apps/Settings:
  Hide sensistive content from locked profiles
  Ignore face settings extras when called by an external package.
  startActivityForResult with earlier new Intent
  Use correct API to get calling package name in CredentialStorage
  Prevent SettingsSliceProvider from accessing unused packages
  Hide notification content in history
  Do not enable the Content Protection toggle for non-admin users.
  Add ComponentName explicitly to make sure arbitary intents aren't launched from Settings.
  AppRestrictions - use vetted component
  Drop PendingIntent extras from external packages during enrollment.

Change-Id: I2e6b262a366c24202897f3e040825f9e41d31a02
2025-09-12 17:57:21 +03:00
ReallySnow
8f7cf2c861 Settings: DevicePicker: Adapt to S style
Change-Id: Idd83ad50070c0541136afe02502752e75d6b162d
2025-08-28 13:38:21 +03:00
jhenrique09
9deea9c089 SlicesDatabaseHelper: Use Build.VERSION.INCREMENTAL
Change-Id: Ibf41df806c7f7c5b1671377a713817d3aed076bf
2025-08-28 13:38:20 +03:00
maxwen
b25bd103be Settings: fix typo in settings namespace for qr scanner on ls
its in secure and not in global

Change-Id: I2ec4d93a25f9aed3e9db2151c72fb21918905cdc
2025-08-28 13:38:20 +03:00
ExactExampl
720337de41 Partially revert "[Settings] Start SettingsDumpService to dump the db log after the db is"
'Start SettingsDumpService after the MobileNetworkRepository is
created' sends the intent every single time the
NetworkDashboardFragment is instantiated (basically every time user
opens the network dashboard in Settings).

SettingsDumpService's lifecycle never finishes, since it's context is
passed to the MobileNetworkRepository for singleton instance creation
which then proceeds to holding a reference to that context thus keeping
the entire service alive along with the application process, which
prevents the static singleton from being garbage collected creating an
indirect retention cycle. All that over time grows into a solid memory
leak.

SettingsDumpService (as well as MobileNetworkRepository instance,
obviously) proceed to dangling until the app process gets eventually
killed by the lmkd (which is unlikely to happen but still was observed
on several devices running stock ROM) or manually terminated by user,
but based on the observation, maximum time of dangling could be
perfectly equal to global system uptime.

This issue still remains all the way up to latest AOSP tags and betas,
although some vendors stock ROMs seem to have sorted it out.

Since we don't really care about dumping mobile network info
(especially in production builds), do the minimum changes required to
remove the dumping feature and avoid future AOSP merge conflicts.

This partially reverts commit d6f3ad9178.

Change-Id: Ifd7ded6cebd5f247cbdeb88035fdeb21cf060412
2025-08-28 13:38:19 +03:00