Commit Graph

32 Commits

Author SHA1 Message Date
josephpv
7ef9c46afa Private space auto lock on device restart during setup
After creation of private space value of auto-lock setting is explicitly
set to lock on device restarts. Just before the end of the setup flow
the auto-lock setting is changed to auto-lock on device lock before the
last screen of private space setup.

Bug: 342398315
Test: atest PrivateSpaceMaintainerTest
Change-Id: I8eeb0058c7ecb31d6e30b4cc78ec5877ed316f75
2024-05-28 16:27:09 +00:00
Treehugger Robot
1b1c159d9f Merge "Kill tasks that are neither visible nor in focus" into main 2024-05-20 14:27:25 +00:00
Manish Singh
9447b63197 Kill tasks that are neither visible nor in focus
Bug: 336754145
Test: manual
Change-Id: I559886b172c0f2e6a5d9882f8109b8d51644315c
2024-05-17 13:22:42 +00:00
Manish Singh
ef8194e7d9 Change default lock to every time device locks
Fix: 339826512
Test: manual
Test: atest PrivateSpaceMaintainerTest
Test: atest AutoLockPreferenceControllerTest
Change-Id: I9f5f028666ac409ab6c732a440b2202f31839c9f
2024-05-14 11:16:53 +00:00
josephpv
8c45e82c35 Remove logs revealing private space existence
With this change logs which can reveal private space existence when
private space is locked are removed.

Bug: 334040689
Test: Manual
Change-Id: I09e01db839569ca5cc995b72ece6fe25916788a8
2024-04-18 19:00:12 +00:00
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
a7603d2b43 Handle startProfile failure during creation of private space
This includes to verify return value of startProfile to check if profile
is started successfully. If startProfile failed for any reason then
delete the created profile and return false for createPrivateProfile().

Bug: 313926659
Test: atest PrivateSpaceMaintainerTest
Change-Id: I493cb3a41cef8bdc1be42fe328c4f7bd04944b94
2024-04-11 15:59:43 +00:00
Joseph Vincent
db315e642b Merge changes I6387c999,I470e5c6e into main
* changes:
  Update illustrations in Private Space setup & settings
  Replace autoadvance screens with waiting screen in PS setup
2024-04-10 09:51:35 +00:00
josephpv
af800e55f4 Replace autoadvance screens with waiting screen in PS setup
This change replaces the auto advancing screens shown during private
space setup flow with a single loading screen.

Recording: b/332652637#comment3

Bug: 332652637
Test: Manual
Change-Id: I470e5c6ece16cfefd0734d3daadf1d8efe963f63
2024-04-09 21:13:37 +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
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
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
Manish Singh
1236e94cf4 Merge "Rename the name of private profile creation from Settings" into main 2024-03-27 09:43:47 +00:00
Himanshu Gupta
5e451db395 Disable PS entry point and Activity when PS is not allowed.
In this change we disable:
1. Security Center Entry point
2. PrivateSpaceAuthenticationActivity

when private profile is not present and cannot be added.

Additionally, the intent exposing PrivateSpaceAuthenticationActivity
is also non-exported and changed to a better name.

Bug: 328578044
Test: Manual build and flash
Change-Id: I13d298316c6d719d0b06e4969989ea1da83dd4c6
2024-03-22 13:44:23 +00:00
Manish Singh
e157ba8f39 Rename the name of private profile creation from Settings
Bug: 324844478
Test: manual
Change-Id: I9d2a2e3a2aa73e3eeea4fd08c45c9f9d654ea5d4
2024-03-19 15:52:27 +00:00
Olivier Nshimiye
0f3799cbad Add an additional flag guard for Private Space implementation
This a layer of flag guarding only for the implementation of Private Space features excluding the APIs. The MVP flag allow_private_profile still guards all the features including the APIs.

Bug: 326060689
Test: Manual - a few verifications that some feeatures are unavailable when this flag is disabled
Test: Run presubmits and verify that nothing breaks
Change-Id: I05f7e2f20c6132b33484bb133ce03a933ece485f
2024-03-04 15:43:24 +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
6f4dc73c53 Add logging to private space settings
Bug: 317625931
Test: Manual
Change-Id: I01200b54c436d2a60ac07c9facbb5cf35a44d920
2024-01-19 23:11:42 +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
16c32a5e2c Calling requestQuietMode with peindingIntent to match PS settings with
PS state

Bug: 314910049, 312399293
Test: Manually verified

Change-Id: Iebdd09d4c6f319d50b8c0f118de0ddb2eaeb95d6
2023-12-18 14:16:11 +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
51f1321b1e Put stricter flag checks
Also removed a log which gives away flag.

Bug: 312976400
Test: manual
Change-Id: I4a989de8b6b920666aabf0cc9311e28becc4d862
2023-11-24 18:51:27 +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
84944ba6f0 Add auto advancing screens for private space setup
This includes changes for
1. To add auto avancing screens to PS setup
2. Screen to set a different Private profile lock or use existing lock
3. Success screen on setup completion
4. Shows Error screen if profile creation failed for some reason
5. Send intent towards launcher, show a Toast message to access PS from bottom of All apps and exit.

Bug: 299069146
Test: Manual setup
Change-Id: If4e5dd5a42abb11259bc40506189c7c750324139
2023-10-27 12:32:12 +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
6efc455f2c Show a separate tab for the Private Space
This covers all the known Settings pages using the tabbed view model.

https://docs.google.com/document/d/1CdjUjAE84-5ZEPRIfw5KYFjLVHtEZxc_sF0w95su8DA/edit?resourcekey=0-dAACT9HRexY1IyoxMmkVlw#heading=h.58jd58rmznte

Screenshots:
all apps
https://screenshot.googleplex.com/3E5Jm7Pi2JfN64r
with work tab:
https://screenshot.googleplex.com/8egk4yHK5jSENjR

PS Apps Special media management apps
https://screenshot.googleplex.com/BHHafqW7bgUwSGg
with work tab:
https://screenshot.googleplex.com/3cocdhruEmCCh5k

PS Location Services tab view
https://screenshot.googleplex.com/3DqJcT2BFTEpvYT
with work tab:
https://screenshot.googleplex.com/6Avpx6hxSrdGJw5

PS on screen keyboard tab view
https://screenshot.googleplex.com/4FzVNnBWwbUeJNw
with work tab:
https://screenshot.googleplex.com/8E8UhpWq8PL5nxU

PS password account tab view
https://screenshot.googleplex.com/6bDR4AKtth2S3EW
with work tab:
https://screenshot.googleplex.com/9msXV2TdHdJapch

PS storage tab view
https://screenshot.googleplex.com/5Nk2FTxwdmpEv3B
with work tab:
https://screenshot.googleplex.com/79tw2EaWZKfMsnC

PS appl_languages_work
https://screenshot.googleplex.com/3qrREeg3RQdHhhH

Bug: 302278487
Test: manual
Change-Id: I8cd39170827fbe251bc4075ef306206020b3a022
2023-10-11 12:32:17 +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