Commit Graph

432 Commits

Author SHA1 Message Date
rmp22
d05a888a44 Settings: power off verify
Change-Id: I5e99bd38a1ff50ce3e92d662ab5c07f3a8b22d37
2025-12-10 00:41:34 +09:00
jhenrique09
9d62214276 AmbientDisplay: Add custom pref for devices with custom doze packages
Change-Id: Ie065f3892360f56d930ad1a373547454fb80892b
Signed-off-by: jhenrique09 <jhenrique09.mcz@hotmail.com>
Signed-off-by: HeroBuxx <me@herobuxx.me>
2025-12-10 00:41:33 +09:00
rmp22
0371350cc3 AppLockPackageListFragment: fix app filter
Change-Id: I2e1441f6b394f5f3a40b627e039aa9a47fe26c1a
2025-12-10 00:41:32 +09:00
Ido Ben-Hur
2eec709cf1 Settings: Allow scheduling always on display [2/2]
* Squash of
  yaap/packages_apps_YASP@30441ec
  yaap/packages_apps_YASP@b896aa6
  yaap/packages_apps_YASP@f500a60

[jhonboy121]: adapted to A13 and use a preference controller to update the preference

Co-Authored-By: jhonboy121 <alfredmathew05@gmail.com>
Change-Id: If736f5609ca660e3c9797a309c814d2dcd618d31
2025-12-10 00:41:31 +09:00
Pranav Vashi
f8ef1252b4 Settings: AppLock: Update for kotlin errors
Change-Id: I7115c6e2031d613e59859710f587ee2a26614001
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:30 +09:00
Pranav Vashi
10d33a3a0b Settings: Let app lock use face unlock
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:30 +09:00
Pranav Vashi
81a32f493f Settings: Add app lock settings for alternate security settings provider
* When google security settings provider overrides security settings,
  app lock settings cannot be found.
* Add same to advanced settings.

Fixes: https://github.com/crdroidandroid/crdroid_features/issues/101
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:30 +09:00
Pranav Vashi
5ed3dd40b6 Settings: Add app lock summary for 0 protected apps
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:30 +09:00
Pranav Vashi
973da33aa2 AppLock: Slightly bigger icon size
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:30 +09:00
Pranav Vashi
d26620b7ce Settings: Update AppLock API
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:29 +09:00
Pranav Vashi
4fd4972322 Settings: Allow locking all apps visible in launcher
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:29 +09:00
jhonboy121
edadced2f0 Settings: Introduce App Lock [3/4]
Squashed:

* AppLockCredentialActivity is a stripped down version of ConfirmDeviceCredentialActivity in Settings

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>
Signed-off-by: Adithya R <gh0strider.2k18.reborn@gmail.com>

Settings: applock: adapt for API changes

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>

Settings: use a new task stack for app lock fragments

* fixes fragments staying in recents on going home
* also made other preferences do binder calls asynchronously

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>
Signed-off-by: Adithya R <gh0strider.2k18.reborn@gmail.com>

Settings: applock: fix unlock prompt disappearing when trying to open apps

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>

Settings: applock: add hidden app settings

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>
Signed-off-by: Adithya R <gh0strider.2k18.reborn@gmail.com>

AppLockPackageConfigFragment: allow launching app from app icon

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>

FlamingoSettings: applock: early return in setChecked if backing field has the same value

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>

Signed-off-by: Adithya R <gh0strider.2k18.reborn@gmail.com>

[nift4: drop useless plurals.xml, make timeout values translatable]

* Dhina17 <dhinalogu@gmail.com>
        applock: Adapt for Android 14

Change-Id: I85d72ee72353417ead528483bbbe1ac1e6860063
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:29 +09:00
someone5678
eff5a9865a Settings: HideDevStatus: Query all apps installed by any user [2/2]
* And set value for all user

Change-Id: I5750800d7cdec1cb36922fac09a9d3b797806e33
2025-12-10 00:41:29 +09:00
someone5678
6f444282a1 Settings: Hide ADB and developer setting enable status [2/2]
* Code is adapted from cutout force full screen
* Give authorship

Co-authored-by: LuK1337 <priv.luk@gmail.com>
Co-authored-by: Tony Mantler <nicoya@google.com>
Co-authored-by: jhenrique09 <jhsv09@gmail.com>
Co-authored-by: jhonboy121 <alfredmathew05@gmail.com>
Co-authored-by: cjh1249131356 <cjh1249131356@gmail.com>
Co-authored-by: Adithya R <gh0strider.2k18.reborn@gmail.com>
Signed-off-by: someone5678 <nemui3353@gmail.com>
2025-12-10 00:41:29 +09:00
Joey Huab
b54aa2f650 Settings: Do not hide Now Playing for Pixel devices 2025-12-10 00:41:26 +09:00
Pranav Vashi
184131faec Settings: Add config to display Now Playing
* Disabled by default as most devices dont support it.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-12-10 00:41:26 +09: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
Adnan
fa351b4335 Settings: Add option to scramble pin layout when unlocking (1/2).
Change-Id: I3e2c200a0a31d3c765831bc30280029a50c88051
2025-08-28 13:35:01 +03:00
Michael Bestas
2739162b84 Settings: Forward port pattern visibility settings (2/2)
Change-Id: Ic627953c5df854c442671a98b5da539b994da18b
2025-06-22 13:00:17 +03:00
Rubin Xu
48e4b5e1af Use correct API to get calling package name in CredentialStorage
Activity.getCallingPackage() does not always return the package
name of the actual calling app. getLaunchedFromPackage() should
be used instead.

Bug: 389681530
Test: manual
Flag: EXEMPT bugfix
Merged-In: Ibdbc45e53f4aa46fae79fa234705b3735bfda4cd
Change-Id: Ibdbc45e53f4aa46fae79fa234705b3735bfda4cd
(cherry picked from commit 70bd3efe0674bccb0d454845d86fb2402779a7bf)
2025-06-05 04:03:10 -07:00
Adam Bookatz
094c9df207 Do not enable the Content Protection toggle for non-admin users.
Flag: EXEMPT bugfix
Bug: 409318132
Test: m -j256 Settings && atest
SettingsRoboTests:ContentProtectionTogglePreferenceControllerTest
Change-Id: I46609c795923d427a5b7fa10bc2e8b071fad72d6
(cherry picked from commit ef801e1a8ec3a18ce9e0221fc7e1dfe495d0be8a)
2025-05-20 09:35:32 -07:00
Hani Kazmi
e2bf7d5e03 [AAPM] Open Settings from Dialog in New Task
Test: Presubmit
Test: Manually tested on device
Bug: 404595286
Flag: EXEMPT bugfix
Change-Id: Ib100861a09429f1df7cfc909cb567f45cff44401
2025-03-20 05:57:26 -07:00
Treehugger Robot
e2984b4b06 Merge "Change the resource ID of advanced protection help URI" into main 2025-03-19 10:52:36 -07:00
Azhara Assanova
96c6ed59a6 Change the resource ID of advanced protection help URI
Change-Id I3c6d24e3e9a4358ab1adb342dbee8fc56ac16794 added advanced
protection help URI to frameworks/base/core/res/res/values/config.xml,
so this change removes the duplicate resource from Settings and updates
ActionDisabledByAdvancedProtectionDialog to use the framework resource.

Bug: 401233918
Test: manual
Test: atest ActionDisabledByAdvancedProtectionDialog
Flag: EXEMPT bug fix
Change-Id: Ic84909f4c16d3449bd9981be6659987b1963a26a
2025-03-19 16:02:17 +00:00
Azhara Assanova
76b96fbb15 Fix default window type for Advanced Protection dialog
The previous window type FIRST_APPLICATION_WINDOW was incorrect and
could have caused the dialog to be dimmed and TalkBack to not be
focused. The current window type TYPE_APPLICATION fixes these issues by
correctly placing the dialog in the window hierarchy.

Bug: 404595933
Bug: 404439964
Bug: 353531691
Test: visual
Test: checked with TalkBack
Flag: EXEMPT bug fix
Change-Id: I520220c1527868b6fc928eaa35184ba9b0159e06
2025-03-19 07:18:08 -07:00
Hani Kazmi
d22dc992a3 [AAPM] Add framework stats atoms for Advanced Protection
Emit logs whenever advanced protection state changes, or the user is impacted
(inferred by a dialogue being shown)

Bug: 391635274
Change-Id: Ie940afbeaf023df5b1733b2137829ecc78ade137
Test: AdvancedProtectionManagerTest AdvancedProtectionServiceTest
Flag: android.security.aapm_api
2025-03-12 03:47:13 -07:00
Shawn Lin
50d8d10c58 Merge "Update strings for summary in device unlock page" into main 2025-03-11 19:25:14 -07:00
Shawn Lin
10cf921fb7 Update strings for summary in device unlock page
Bug: 370940762
Test: atest FaceStatusUtilsTest
            FingerprintStatusUtilsTest
            ScreenLockPreferenceDetailsUtilsTest
	    FaceSafetySourceTest
	    FingerprintSafetySourceTest
	    FaceStatusPreferenceControllerTest
	    FingerprintStatusPreferenceControllerTest
Flag: com.android.settings.flags.biometrics_onboarding_education
Change-Id: I0927529e939a8e16ddf6692adc8ad427bdbe1bca
2025-03-05 03:11:27 +00:00
Azhara Assanova
db59b0e729 Update ActionDisabledByAdvancedProtectionDialog
For UI, the dialog was migrated to SpaDialogWindowTypeActivity, which
has a Material3 theme and can support rendering over QuickSettings.

This change also adds logic around which message to show depending on
the received extras for feature ID and the dialog type.

Finally, the dialog will display the support button if the help Intent
URI exists and resolves to an activity. Tests around the support button
will be added in a follow up CL.

Bug: 389080341
Test: Visual test
Test: atest ActionDisabledByAdvancedProtectionDialogTest
Flag: EXEMPT bug fix
Change-Id: I0ed23cd44666a40ad54d755f628cd36ef06cc145
2025-03-04 12:00:50 +00:00
Jacky Wang
ae280f8721 [Catalyst] Lock screen summary is not updated
In original implementation, DashboardFragment.onResume calls
AbstractPreferenceController.updateState to refresh preference. While
after Catalyst migration, it requires explicit update when external
dependency is changed.

Bug: 397798327
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: adb shell settings put secure lock_screen_show_notifications/lock_screen_allow_private_notifications
Change-Id: I1c16d7df62cdb1cb53d365f2636aa1dc0a424839
2025-02-25 09:01:43 +08:00
Wa Gao
c668a9e5c1 Merge "Disable the ContentProtection setting switch bar when current user is a guest user." into main 2025-02-24 16:02:09 -08:00
lbill
0a46950939 Do not set title description for Confirm Activity
The Confirm Lock Activity for Auto-Confirm feature announce
redundant description after confirm the PIN/Password in the
Click Toggle CUJ.
1. The title won't be present on the Confirm Lock
2. Set title for Confirm Lock breaks the a11y requirement

Flag: EXEMPT for fixing a11y bug
Bug: 384628809
Test: Manual enable a11y talkback, go to Settings > Security & Privacy
> Device unlock > Screen lock > Settings > Auto-confirm unlock toggle
> input PIN/Password to dismiss the confirm lock activity
> Ensure no redundant title description announced by talkback

Change-Id: I95fc03aae4fb5dc7500cc18c383dff62b95bc3f1
2025-02-21 03:20:08 -08:00
Wa Gao
baf503050f Disable the ContentProtection setting switch bar when current user is a guest user.
Bug: 337774836
Test: m -j256 Settings && atest
SettingsRoboTests:ContentProtectionTogglePreferenceControllerTest
Flag: EXEMPT bugfix

Change-Id: I36173b2e7027765b526dfa2ebca216a7de71e669
2025-02-10 19:32:11 -08:00
Yuri Ufimtsev
55b7b0613d Allow the LockPatterUtils to be null
In some tests it could inconsistently become a null, crashing with NPE, for the reason I can't understand (maybe there is a race condition somewhere between mocking and accessing the LockPatterUtils in such tests)
Let's accept it gracefully

Test: atest SettingsUnitTests
Bug: 382637173
Flag: EXEMPT bugfix
Change-Id: I35d5faa1a29307fc780207a816680a32b2796bc0
2025-02-05 14:38:46 +00:00
Shawn Lin
d6df87cca6 [Biometric Onboarding & Edu] move screen lock settings to choose lock
- Hide gear menu in LockScreenSafetySource
- Move screen lock settings to ChooseLockGeneric

Bug: 370940762
Test: atest ScreenLockPreferenceDetailsUtilsTest
Flag: com.android.settings.flags.biometrics_onboarding_education

Change-Id: I07c7bb16ecc2ea6e7cd64a4e1d6bf4f493c5b951
2025-01-22 03:28:19 +00:00
Hani Kazmi
57e649ae4e Merge "Revert "Revert "[AAPM] Add advanced protection dialog according ..."" into main 2025-01-03 09:25:46 -08:00
Hani Kazmi
8e28132ba2 Revert "Revert "[AAPM] Add advanced protection dialog according ..."
Revert submission 31078830-revert-30767017-aapm-dialog-api-feedback-TBLFTCNTUN

Reason for revert: Addressed failing test

Reverted changes: /q/submissionid:31078830-revert-30767017-aapm-dialog-api-feedback-TBLFTCNTUN

Change-Id: I3321b4f5baaca9dd270350b9201998ffe0d40473
2025-01-02 05:07:50 -08:00
Priyanka Advani (xWF)
47d59ab974 Merge "Revert "[AAPM] Add advanced protection dialog according to API f..."" into main 2024-12-27 14:25:58 -08:00
Jacky Wang
cfcf20c70a [Catalyst] Provide screen key to @ProvidePreferenceScreen
NO_IFTTT=Catalyst only

Bug: 386179791
Flag: com.android.settings.flags.catalyst
Test: manual
Change-Id: Ie8106ec45a32e4a61826512fc62746c9ffc47d9c
2024-12-27 17:14:27 +08:00
Priyanka Advani (xWF)
2574343b43 Revert "[AAPM] Add advanced protection dialog according to API f..."
Revert submission 30767017-aapm-dialog-api-feedback

Reason for revert: Droidmonitor created revert due to b/384828570. Will be verifying through ABTD before submission.

Reverted changes: /q/submissionid:30767017-aapm-dialog-api-feedback

Change-Id: Ibf26aca2453f2007370974290f5c16d6b091341e
2024-12-23 13:41:43 -08:00
Azhara Assanova
e2248f1c4f [AAPM] Add advanced protection dialog according to API feedback
This change also updates ActionDisabledByAdminDialog because the
AdvancedProtectionManager#createSupportIntent method is now static.

Bug: 378968840
Bug: 352420507
Test: ActionDisabledByAdminDialogTest
Test: WepNetworksPreferenceControllerTest
Test: manual
Flag: android.security.aapm_api
Change-Id: I8443742aadead45091fee757cbdf715d28eee495
2024-12-13 13:25:38 +00:00
Jacky Wang
efcb4dfddf [Catalyst] Migrate AmbientDisplayAlwaysOnPreferenceController
As the preference is exported as external settings, for safety, do not
update the preference key with datastore key. As a workaround, manage a
mapping between preference hierarchy key and datastore key.

Bug: 372307567
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: devtool
Change-Id: I56126485061859b41216cd23b8e1caf63823a1ec
2024-11-21 13:37:31 +08:00
Jacky Wang
b6132572ea [Catalyst] Migrate "Lock screen" entry point
Bug: 372307567
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Test: manual
Change-Id: I0c269c550c678362f345c9b5438a133c7a76fe10
2024-11-21 10:24:38 +08:00
Andreea Costinas
25d8e56c53 Relax WiFi cert installation restrictions in HSUM mode
The Settings app runs under the current user, which previously lacked
the necessary permissions to install client certificates in HSUM mode.

This change allows any admin user to install these certificates.

Bug: b/370013519
Flag: EXEMPT bugfix
Test: manually installed and removed client certificate for WiFi
Change-Id: I57a7364c76a0adb7ed4112e48fb20070ab9d7bff
2024-11-12 10:40:26 +00:00
Chris Antol
f141563830 Add Lock Screen page skeleton and TS flag
Bug: 372307567
Test: none
Flag: com.android.settings.flags.catalyst_lockscreen_from_display_settings
Change-Id: I0740fea06e8f69bb8408ef5389b34756cfe475c7
2024-10-22 18:04:46 +00:00
Jacky Wang
f6a573530e Move ObservablePreferenceFragment class
Bug: 365922551
Flag: EXEMPT Move class only
Test: Presubmit
Change-Id: I17851055b09d73b95e6adaafbe96f4375d5f637e
2024-09-13 20:39:59 +08:00
Jacky Wang
93b437fcf2 Avoid reference ObservablePreferenceFragment
Bug: 365922551
Bug: 275385372
Flag: EXEMPT Code cleanup
Test: atest AutoPinConfirmPreferenceControllerTest
Change-Id: I55cec2ca5535eac3f0fae16af6eae320b39f1fbe
2024-09-12 14:46:54 +08:00
Joshua McCloskey
ed59922ca8 Remove face/fignerprint search if not present
Test: Verified manually with a device that if face/fingerprint are not
present they do not show up.
Fixes: 350599580
Flag: EXEMPT bugfix

Change-Id: I6a691d2985e4839336e9c08dfa6c97abe23f43f2
2024-07-30 18:14:41 +00:00
Eric Biggers
9ab4bf20f7 Merge changes I20f2330d,Iaca5b20c into main am: 790e28c431 am: 231766c463
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/3061866

Change-Id: I66a91364d8211acf73310d55997bd5f6d08e2ae8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-06 18:09:47 +00:00
Eric Biggers
3fd46cc27d Use KeyProperties.UID_SELF instead of KeyStore.UID_SELF
Since the class 'android.security.KeyStore' is going away, the UID_SELF
constant is being moved to a more appropriate location in KeyProperties.
Update code that references this constant to use the new location.  No
change in behavior; the value of the constant remains the same.

Bug: 326508120
Test: build
Flag: NONE mechanical refactoring with no behavior change
Change-Id: Iaca5b20c37b7952df8f26a99b3f7391c5a7f01b6
2024-04-25 19:21:31 +00:00