Commit Graph

32 Commits

Author SHA1 Message Date
josephpv
83f73732de Set SKIP_FIRST_USE_HINTS setting for private space
With this change the value of Secure settings SKIP_FIRST_USE_HINTS is
set for private profile after creation of profile in PS setup flow.

The value is set for the profile user so that first launch of an app in
private space will not display introductory hints.

Bug: 325596557
Test: PrivateSpaceMaintainerTest
Change-Id: I63a967bba052a3dcb4742c95b89c6da19aba74d5
2024-04-15 10:47:42 +00:00
josephpv
5e62407466 Add mocks for LockPatternUtils.isSecure() method in setup
This change adds mocking for LockPatternUtils.isSecure method in the
tests where SecurityFeatureProvider is referred in setup as per the
comment in b/323649600#comment7
The tests are passing locally even without this.

Bug: 333504640
Test: atest com.android.settings.privatespace
Change-Id: I7d9c3a8356dbf25cf09530ffb53712b3ab887160
2024-04-12 11:48:48 +00:00
Joseph Vincent
1ddef782c8 Merge "canAddPrivateProfile checks for private space creation test" into main 2024-04-09 10:48:41 +00:00
Manish Singh
f2869fd64e Merge "Remove all Settings tasks from Recents when PS is locked" into main 2024-04-05 15:06:41 +00:00
josephpv
2c631fcd56 canAddPrivateProfile checks for private space creation test
Bug: 332854426
Test: atest PrivateSpaceMaintainerTest, atest PrivateSpaceDeletionProgressFragmentTest
Change-Id: I50ddd15f53e14b54a2d8df201b94f8423eec3d72
2024-04-04 17:33:54 +00:00
Olivier Nshimiye
f195e8bfec Merge "Remove 'Hide Sensitive Notifications' item from PS settings page" into main 2024-04-04 17:08:04 +00:00
Joseph Vincent
727ec97362 Merge "Fix for test failure in PrivateSpaceMaintainerTest" into main 2024-04-04 11:10:12 +00:00
Olivier Nshimiye
7851c33bbd Remove 'Hide Sensitive Notifications' item from PS settings page
Remove the hide sensitive notifications toggle, but keep private space sensitive notifications always hidden on lockscreen

Bug: 329657118
Test: atest PrivateSpaceMaintainerTest
Test: Manual - verified that PS sensitive notifications are always hidden on lockscreen.

Change-Id: Id4229c11a2c5a3a4d3fedaf710c51f25af64bf86
2024-04-04 09:40:36 +00:00
josephpv
1108e206f4 Fix for test failure in PrivateSpaceMaintainerTest
Bug: 332488382
Test: atest PrivateSpaceMaintainerTest
Change-Id: Id6a18305f03f45c580ada482a352d1d7ad3dd788
2024-04-03 22:23:05 +00:00
josephpv
4e32375f3d Use canAddPrivateProfile() to enable PS delete from Reset
This change adds canAddPrivateProfile() check to enable/disable
Private space delete controller in Reset options.

Matches the availability to delete private space from reset
options with the conditions used to show the private space entry point.

In Settings Reset options preference to delete private space will be
shown only when private space creation is allowed on the device or if
private space already exists on the device.

Bug: 330396315
Test: ResetOptionsDeletePrivateSpaceControllerTest
Change-Id: I63232556f7927aeb07b73e8732bbb8b1d2423456
2024-04-03 20:39:12 +00:00
Manish Singh
f42207e1d9 Remove all Settings tasks from Recents when PS is locked
Bug: 330865434
Test: manual
Test: atest PrivateSpaceMaintainerTest
Change-Id: I56b12a6ea5bfedd243fd138ef898f8496301199e
2024-04-03 12:29:44 +00:00
Joseph Vincent
7e3d30c95f Merge "Change Never Option to lock private space after device restart" into main 2024-03-28 22:39:13 +00:00
josephpv
d4f5641c55 Change Never Option to lock private space after device restart
Bug: 324208974
Test: atest AutoLockPreferenceControllerTest
Change-Id: Ia45f7f02f407808eaa9a061ae32480c354bdfb74
2024-03-28 11:16:23 +00:00
josephpv
31a793dfcf Enabling private space unit tests in presubmit
Bug: 330755765
Test: atest SettingsUnitTests
Change-Id: Iad53a5425238d933af96d4ef8c3f3fd8c04347f7
2024-03-25 12:38:39 +00:00
Joseph Vincent
f2f44f50de Merge "Add entrypoint for Learn More in PS settings & Setup intro" into main 2024-03-15 07:39:16 +00:00
josephpv
1af33733c6 Add entrypoint for Learn More in PS settings & Setup intro
Screenshots:
go/ss/RXhN57DSuSj7aQf.png
go/ss/5xcbx3mWeo2sZ37.png

Bug: 326059389
Test: atest PrivateSpaceFooterPreferenceControllerTest
Change-Id: I72beb1a04ea11909643dd6b455575478cfb5d87c
2024-03-12 16:15:53 +00:00
josephpv
3c97c63d62 Show Alert dialog on Hide when locked is enabled
Bug: 325398789
Test: atest HidePrivateSpaceControllerTest
Change-Id: I6bfa3546b3ba56905918f8fd44c5351bf2d284b8
2024-03-12 10:35:56 +00:00
Olivier Nshimiye
b4e6f20567 Add Private Space features flag check to Settings tests
Adding this flag check since we are putting all the implementations of Private Space features behind this flag.

Bug: 326060689
Test: Run presubmits and verify that nothing breaks
Change-Id: I2c0e9a1afc3787232425f79d06d4aeba001283ec
2024-03-04 15:43:47 +00:00
Olivier Nshimiye
baecaee2a5 Add a toggle for enabling/disabling sensitive lockscreen notifications for Private Space
This adds a toggle in the Private Space Settings page to control the
lockscreen sensitive notifications for the private profile.
Sensitive notifications for private profile will still be disabled if
sensitive notifications are disabled for the main user.

Demo link:https://drive.google.com/file/d/1--LNXziTRTMvfdsJZAh90SiNiPxWNcI8/view?usp=sharing

Bug: 317067050
Test: atest SettingsUnitTests:HidePrivateSpaceSensitiveNotificationsControllerTest

Change-Id: Ie7f18c1a940e5ffd64112a01c48ac9dee58cb1ab
2024-02-22 11:10:54 +00:00
josephpv
e1a2c82db3 Add Private space Delete settings page inside PS settings page
Contains implementation of settings page for Delete private space
controller inside private space settings page.
- On selecting to delete private space displays list of account signed in
to private profile and deletes the private space after authentication.
- Shows a toast message after private space is deleted

- Adds dependency for setupdesgin loading layout to show a loading
  screen while deletion of private space is in progress.

Recording Link : b/318383729
go/ss/4Aq3rmbSGHMHesK.png

Bug: 318383729
Test: atest DeletePrivateSpaceControllerTest

Change-Id: Ia1730915e2469b47823c507f9ef6cd8f63c99baf
2024-01-31 19:29:13 +00:00
josephpv
099ae32943 Add auto lock preference inside private space settings
This includes below changes
- Adds perference for Auto Lock settings inside private space settings page.
- Feaure is behind flag
android.multiuser.support_autolock_for_private_space

Screenshots:
go/ss/ZCaYGWMDdH8bQNz.png
go/ss/AxnD8DviiT5hhkW.png
go/ss/9TMYmacyiVhyexB.png
go/ss/6SzhkGfTbDYVUVE.png

Bug: 312893140
Test: atest AutoLockPreferenceControllerTest, atest AutoLockPreferenceControllerTest

Change-Id: I95beb9d71c709002e17307e612c60b2f5087290b
2024-01-12 19:12:30 +00:00
josephpv
0b7d46746c Add Biometrics settings inside private space One Lock settings
This includes below changes:
- Add Biometrics preferernce in Private Space One Lock settings page
- Face and Fingerprint enrolment for Private profile
- Feature is behind flag android.multiuser.enable_biometrics_to_unlock_private_space

Screenshots:
go/ss/9cWZRAuvGGW7gMm.png
go/ss/B3NoFbL3KbpSzeN.png
go/ss/7xH3DLi9d6Lu2mR.png
go/ss/8WBEgKychWpduXg.png
go/ss/8pmPGshd9aiPvVC.png
go/ss/AFPBPbiaBBvTj3p.png
go/ss/3fE4XKLLUdP8LmF.png

Bug: 308862923
Test: atest CombinedBiometricStatusUtilsTest, atest FaceFingerprintUnlockControllerTest
Change-Id: I1853107a4df4fc97db53c97524c6d44a4f554e37
2023-12-19 18:57:10 +00:00
josephpv
d2d3453f81 Update USER_SETUP_COMPLETE setting after starting private space
On setting USER_SETUP_COMPLETE for private profile device is reapplied
to the profile

Bug: 311348071
Test: Verified device theme color is applied to profile
Change-Id: I25f3013aaf6cfc6925d858b461c1f2c6beb534f6
2023-12-13 14:31:47 +00:00
josephpv
242ae4fbcc Lock Private space at the end of PS setup.
This change is to call UserManager requestQuietModeEnabled() API at the
end of PS setup to enable quitemode for private space.

Bug: 313652502
Test: atest PrivateSpaceMaintainerTest
Verify Private space is locked state after private space setup completion.

Change-Id: I1d863f6d51ffa4bb58318696603905d35c3109b6
2023-12-11 20:43:59 +00:00
Manish Singh
aa91f1db3a Merge "Reset Private Space settings on new space creation" into main 2023-11-15 13:55:12 +00:00
Manish Singh
7a556b851c Reset Private Space settings on new space creation
Also added PrivateSpaceMaintainerTest

Bug: 310217645
Test: atest PrivateSpaceMaintainerTest
Test: atest HidePrivateSpaceControllerTest
Test: manual
Change-Id: Ic1096fd652d23ae6aa9da1421017c08f6bc480aa
2023-11-15 12:54:20 +00:00
josephpv
30e841ce75 Add One Lock settings inside private space settings page
This includes below changes:
1. Add new sub settings page in Private Space settings with option to
   swithch between private profile lock and device screen lock
2. Call Private profile lock setup when swithcing to private lock from
   screen lock.
3. Preference to change private lock when a separate Private lock is set

Bug: 308862923
Test: atest UseOneLockPreferenceControllerTest,
PrivateSpaceLockControllerTest

Change-Id: I0a6d8c7dfbd0ffea19db03ffd6dfe7aa520c9684
2023-11-14 21:27:10 +00:00
josephpv
ee5e1ceb03 Start private space setup when there is no private space set
This change handles as below based on if private space already exists on device:
1. If PS doesn't exist then start the setup flow which shows a PS education screen. On setup button creates the private space.
2. If PS already exists on device then display PS settings page.

Bug: 299069146
Test: atest PrivateSpaceSettingsAuthenticatorTest
Change-Id: I46bdbaeb0210fd5b41a426f852e3f455b62c1c29
2023-10-25 21:17:33 +00:00
josephpv
eace275921 Add toggle to hide private space entry point in All Apps
This change includes implementaion for below:
1. Add a preference inside private space settings page with a toggle switch to control hide/unhide
   private space entry in All Apps
2. Store the preference value in settingsprovider for persistence.

Bug: 302682054
Test: Manual
Change-Id: Ia1a56fc2c43550e23c00a61a5ce4742e42effcbe
2023-10-25 14:46:11 +00:00
josephpv
31b044ed6a Prompt user to Setup a device lock if not set
This add below changes on selecting private space setting:
1. Prompt user to setup device lock if not already set
2. If device lock is set authenticate user first before displaying private space settings page

Screenshot - https://screenshot.googleplex.com/4SrYHbBMJfVuoRy.png
https://screenshot.googleplex.com/6vNWm7Lg83vfnH8.png
RecordingLink - https://drive.google.com/file/d/1r4zb3ILPRqwvP5tlwfjQ9GgnDAW4vZg6/view?usp=drive_link

Bug: 289016927
Test: atest PrivateSpaceSettingsAuthenticatorTest , atest SecuritySettingsTest
Change-Id: I0e5dfb30213843c0dec60a17d01c30cd91db89b0
2023-10-24 10:42:57 +00:00
Manish Singh
5aef6b6264 Remove temp workaround for feature flag
Using the trunk stable feature flagging now.

Bug: 295516544
Test: m
Test: manual adb
Test: atest SafetySourceBroadcastReceiverTest
Test: atest PrivateSpaceSafetySourceTest
Change-Id: I3d2d8c11dfb224ad2b09572493633366b4c4805c
2023-09-13 08:49:56 +01:00
Manish Singh
27c3987860 Add Private Space settings page
This involves:
1. Adding a new page for PS settings under Security & Privacy
2. Integrating the PS safety source with SafetyCenter.

Also, add the capability to create and delete PS from the page.
Creation is temporary to help with prototyping, and will be removed
finally.

Screenshots:
Private Space Entry point in Security & Privacy Settings:
https://screenshot.googleplex.com/4VHxNekjhxZHJwF

Private Space Settings page:
https://screenshot.googleplex.com/3Raw4wuymTHTgtM

Creating Private Space:
https://screenshot.googleplex.com/3dvzAH6V4kQmuYf

Private Space created:
https://screenshot.googleplex.com/Aj7nnF9uuUCa9Q5

Design doc:
https://docs.google.com/document/d/1CdjUjAE84-5ZEPRIfw5KYFjLVHtEZxc_sF0w95su8DA/edit?usp=sharing&resourcekey=0-dAACT9HRexY1IyoxMmkVlw

Bug: 286539356
Bug: 293569406
Test: manual
Test: atest DeletePrivateSpaceControllerTest
Test: atest UseOneLockControllerTest
Test: atest HidePrivateSpaceControllerTest
Change-Id: I9caf8e04e7fb2df36e60f607225e2931988ee692
2023-09-07 18:12:53 +01:00