Commit Graph

480 Commits

Author SHA1 Message Date
Ronish Kalia
8d224da75c Merge "Add support for launching user edit dialog" 2022-06-07 16:13:16 +00:00
Avinash Vadlamudi
5bf8cd7a09 Rename method for better readability
- Rename encircle to encircleUserIcon for proper readability

Bug: 231592331
Test: build, manual check
Change-Id: If9e829372834d8a5f43e4cce358e8c0975fa30eb
(cherry picked from commit 1b7e411315)
2022-06-06 10:03:05 +00:00
Avinash Vadlamudi
d23aba7042 Fix the Ephemeral guest mode UI bugs
- Update the user-icon size to 40dp to align with add-icon size
- Remove the guestInfo preference and add the infoText as the summary for the guestExit preference and fix UserSettingsTest

Bug: 231592331
Test: Manual test, atest SettingsRoboTests
Change-Id: I2591bc19a7b2381d1842f0b28ab8fa19c15c19b8
(cherry picked from commit 9cf1d188a2)
2022-06-03 10:58:54 +00:00
Avinash Vadlamudi
1b7e411315 Rename method for better readability
- Rename encircle to encircleUserIcon for proper readability

Bug: 231592331
Test: build, manual check
Change-Id: If9e829372834d8a5f43e4cce358e8c0975fa30eb
2022-06-03 10:22:31 +00:00
Avinash Vadlamudi
9cf1d188a2 Fix the Ephemeral guest mode UI bugs
- Update the user-icon size to 40dp to align with add-icon size
- Remove the guestInfo preference and add the infoText as the summary for the guestExit preference and fix UserSettingsTest

Bug: 231592331
Test: Manual test, atest SettingsRoboTests
Change-Id: I2591bc19a7b2381d1842f0b28ab8fa19c15c19b8
2022-06-02 15:38:46 +00:00
ronish
ca7f6bf933 Add support for launching user edit dialog
This is required for tiffin usecase wherein a tap on user
details should redirect the user to this edit page, wherein
a user can edit their profile pic and name

Bug: 216835089
Test: Tested manually

Change-Id: I1d214e7436fbf027fcac4a8bb2e0d7a26b923d85
2022-05-30 14:39:17 +00:00
Anna Bauza
935b735fb4 Fix "Turn on phone calls" for guest user
Move "Turn on phone calls" from guest detail user screen to user screen.
Optimisation: Applying restrictions to default guest user has been moved
to UserManagerService -> setDefaultGuestRestrictions.

Following UX there is no need for confirmation dialog.

Bug: 191483069
Test: make RunSettingsRoboTests -j128 ROBOTEST_FILTER="com.android.settings.users.GuestTelephonyPreferenceControllerTest"
       make RunSettingsRoboTests -j128 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: Id7391d3f85954ea7f9c94791f24174105ec8073e
2022-05-28 07:18:40 +00:00
Yasin Kilicdere
cdc0f7213d Merge "Revert "Revert "Remove the fallback AddSupervisedUserActivity.""" 2022-04-19 15:37:34 +00:00
Kedar Chitnis
a1fbad7dd8 Guest mode UX flow updates to user settings
- Add option in user settings to enable/disable ephemeral
  mode for guest user
- Update user settings to show exit guest and reset guest preferences
- Update user settings to show guest related preferences grouped together

Bug: 214031645, 175795666
Screenshots: go/ephemeral-guest-b-214031645-ux
Test: Manual test on sunfish, atest SystemUITests, atest SettingsRoboTests

Relands ag/16544951 after fixing post submit issues

Revert "Revert "Guest mode UX flow updates to user settings""

This reverts commit ed45e8c56a.

Change-Id: I54583f9021171ae523ff40d4f63835f1cb486e35
Merged-In: I54583f9021171ae523ff40d4f63835f1cb486e35
2022-04-14 09:37:57 +00:00
Edgar Wang
6cb3a5ff2b Merge changes from topic "presubmit-am-5513fca9a4904e75827e4e4077587542" into tm-mainline-prod am: b6582aa68c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17614846

Change-Id: Ib7fbe47a5f44e47b5c11ca4e98f22ca62bfc00ab
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-13 05:01:16 +00:00
Edgar Wang
90e095dbe3 Fix LaunchAnyWhere in AppRestrictionsFragment
If the intent's package equals to the app's package, this intent
will be allowed to startActivityForResult.
But this check is unsafe, because if the component of this intent
is set, the package field will just be ignored. So if we set the
component to any activity we like and set package to the app's
package, it will pass the assertSafeToStartCustomActivity check
and now we can launch anywhere.

Bug: 223578534
Test: robotest and manual verify
Change-Id: I40496105bae313fe5cff2a36dfe329c1e2b5bbe4
2022-04-06 17:51:07 +08:00
Kedar Chitnis
fa49a4f111 Guest mode UX flow updates to user settings
- Add option in user settings to enable/disable ephemeral
  mode for guest user
- Update user settings to show exit guest and reset guest preferences
- Update user settings to show guest related preferences grouped together

Bug: 214031645, 175795666
Screenshots: go/ephemeral-guest-b-214031645-ux
Test: Manual test on sunfish, atest SystemUITests, atest SettingsRoboTests

Relands ag/16544951 after fixing post submit issues

Revert "Revert "Guest mode UX flow updates to user settings""

This reverts commit ed45e8c56a.

Change-Id: I54583f9021171ae523ff40d4f63835f1cb486e35
2022-04-04 05:28:21 +00:00
Anna Bauza
ee23152051 Fix "Remove Guest" option shows "Reset Guest" dialog
If the guest user was not auto created, removing the user from settings message was wrongly worded. Small refactor to reuse the same wording in different modules has been done.

Bug: 225314166
Test: manual
Change-Id: Ia1871efc6aeeb2d3604c2fc4fd98a2a3a500953b
2022-03-30 08:20:04 +00:00
Chaohui Wang
9d8603568d Fix "Automatically sync app data" button state not changed
This issue is caused by mPreference is null.
(Not recovered when the fragment is recreated after configuration change.)

Mimic the PreferenceDialogFragmentCompat.getPreference() in AndroidX to
solve this issue.
https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:preference/preference/src/main/java/androidx/preference/PreferenceDialogFragmentCompat.java;l=176;drc=ca9feb3b73769089afbfd36b4d4a3d91239f9cd5

Ideally in the long term, we could use PreferenceDialogFragmentCompat
instead.

Fix: 218754949
Test: robotest & manual
Change-Id: I7fc8dd3b771aa45c91f915e25c8cc6c6afdd8d63
2022-03-29 12:32:23 +08:00
Yasin Kilicdere
b724929454 Merge "Singularization of duplicated multi user strings." into tm-dev 2022-03-24 12:03:29 +00:00
Yasin Kilicdere
4564bce03c Singularization of duplicated multi user strings.
Many multi-user strings were duplicated between SettingsLib, Settings,
System UI and Car projects. This CL removes those duplicates.

List of singularized strings: "Guest", "Remove guest", "Add user",
"Remove guest?", "Too many incorrect attempts...."

Bug: 191386817
Test: NA
Change-Id: I8d9629a1a9628cab9f049df84f706bd04ee75cc2
2022-03-23 19:20:34 +00:00
Matt Pietal
296b904bf1 Update multiple users strings
To match latest guidance

Bug: 219078700
Test: manual
Change-Id: Ieef884e046e1e1798cc98a553bcd902c1374d069
2022-03-23 13:39:42 -04:00
Kholoud Mohamed
51043a1513 Merge "RESTRICT AUTOMERGE Refactor device policy resource APIs to a separate class" into tm-dev 2022-03-19 06:30:10 +00:00
kholoud mohamed
de78149c16 RESTRICT AUTOMERGE Refactor device policy resource APIs to a separate class
Bug: 217388602
Bug: 218875965
Test: atest EnterpriseResourcesTests
Test: manual
Change-Id: I4775d7741c7819fd811c3fc4eda1636b1e04b398
2022-03-17 17:37:45 +00:00
Oli Lan
5f56a273c4 Reduce gap above user list in multiuser settings.
This fixes a large gap above the user list, which occurred because
a PreferenceCategory was used for this with a blank title.

Bug: 224659273
Test: Install and inspect
Change-Id: I82c4491cc6a5111c6517b2845b44632e0859e1b6
2022-03-16 14:57:00 +00:00
Yasin Kilicdere
ba6ee82d59 Revert "Revert "Remove the fallback AddSupervisedUserActivity.""
This reverts commit a30b27657b.

Reason for revert: Now we can remove the fallback activity since the real flow is ready

Change-Id: Iecedbf588412547feecc6de36c89236097f8c236
2022-03-10 11:34:40 +00:00
Yasin Kilicdere
161697beef Merge "Update UI to show feedback while creating Guest from Settings." into tm-dev 2022-03-08 17:41:16 +00:00
Matt Pietal
b8c30c7c5d Add user button UX update
Visually align all add user/guest icons between settings and
systemui. Both areas may tint and size the icons slightly differently.

Fixes: 219078700
Test: visual, use the multiple users settings page
Change-Id: Ic88d5b2197f402f130d6cfeb94bdb2bb1b6aa58c
2022-03-07 13:37:20 -05:00
Yasin Kilicdere
4e31442a72 Update UI to show feedback while creating Guest from Settings.
Make UM.createGuest call async and show "Creating new guest" dialog during.

Bug: 219741250
Test: Manual
Change-Id: I7e3497fef283a4c13719a12b962866f88e9e5a50
2022-03-04 18:24:56 +00:00
Yasin Kilicdere
a30b27657b Revert "Remove the fallback AddSupervisedUserActivity."
This reverts commit 86f3500439.

Reason for revert: Real flow is not ready yet, so we still need the fallback activity.

Change-Id: I34dc5386ff8c18a62b4b11e25fd355a62602329f
2022-03-04 15:44:42 +00:00
Yasin Kilicdere
3fc4642ab4 Fix Guest string was not translated in UMS.userWithName()
This CL reverts the changes made in ag/14282598 since the issue is
solved from the source and removes 'String name' parameter from
UM.createGuest() calls.

Bug: 185309160
Test: atest UserDetailsSettingsTest
Change-Id: I92acad938d79e21b45af99cc76ff411022b61f1b
Merged-In: I92acad938d79e21b45af99cc76ff411022b61f1b
(cherry picked from commit ae871ba823)
2022-03-03 18:32:48 +00:00
Yasin Kilicdere
86f3500439 Remove the fallback AddSupervisedUserActivity.
Rollback the changes done in ag/16388725 and ag/16709333

Bug: 209659998
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"

Change-Id: I75b85df50a3caff55375ad261a97225377644a38
2022-03-01 21:59:23 +00:00
Oli Lan
43412bcccd Increase default user icon size.
This increases the size of the default user icon to the size specified
by the system (190dp), using the new method added in ag/16847427.

Bug: 218838295
Test: visual inspection
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: I3d88fbd1e148f0f63c796a272cd5771f4447812d
2022-02-16 11:44:50 +00:00
Jonathan Scott
269f97d960 Allow overriding of strings referenced in XML files.
Test: manual
Bug: 188414370
Change-Id: Ice45b1808530c14c4efff16795cac7b2cb81516e
2022-02-07 21:00:05 +00:00
Yasin Kilicdere
efede0db18 Merge "Set default name when creating a supervised user in fallback activity." 2022-02-03 19:35:14 +00:00
Darrell Shi
547416749e Settings for timeout to user 0 when docked.
Test: atest SettingsRoboTests:TimeoutToUserZeroSettingsTest
Test: atest SettingsRoboTests:TimeoutToUserZeroPreferenceControllerTest
Test: manually on device, video: http://shortn/_elZS1CdDtE
Bug: 213906356
Change-Id: I519345cdf44eaf452e092adee78ccf9d79130d33
2022-02-02 06:31:51 +00:00
Yasin Kilicdere
a6db6c28a4 Set default name when creating a supervised user in fallback activity.
Fallback activity for supervised user creation was creating a supervised user
without a name (null), now creates it with a default name.
Also put an explanation on the activity stating it's just a placeholder.

Bug: 215232217
Bug: 207495450
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"

Change-Id: I8090fde38155817ac2b4f88271abe8a0ad1ce747
2022-01-28 18:33:15 +00:00
Jonathan Scott
e0d439472f Allow Device Management Role Holder to update Settings strings.
Test: manual
Bug: 188414370
Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
2022-01-25 19:03:24 +00:00
Yasin Kilicdere
031104f18e Merge "Make sure activity for adding a supervised user is opened full screen." 2022-01-21 18:16:48 +00:00
Adam Bookatz
52bd463079 Merge "Disable AppCopyFragment" 2022-01-21 17:33:48 +00:00
TreeHugger Robot
5a7d596259 Merge "Replaced removeUserOrSetEphemeral by removeUserWhenPossible" 2022-01-19 02:59:45 +00:00
Mayank Garg
d228248738 Replaced removeUserOrSetEphemeral by removeUserWhenPossible
Bug: 199446770
Test: m Settings
Change-Id: I1c8cfdbf395a7be59946cf0dad510ec1aee320d9
2022-01-14 16:03:56 -08:00
Yasin Kilicdere
d9281c887a Make sure activity for adding a supervised user is opened full screen.
Add supervised user activity only covers the right hand side of the
screen in large screen devices. This CL makes sure it is always
started from Settings with correct flags to be shown full-screen.

Bug: 214401383
Bug: 205101183
Bug: 199868785
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: If81e0cce91a5295eb2b93b12f68b70fd1240c953
2022-01-13 18:46:19 +00:00
Oli Lan
8aec687b29 Add config flag in Settings to control whether restricted profiles are offered.
This adds a config resource to specify whether restricted profiles
should be offered as an option when a new user is added. This replaces
the previous check if a device is voice capable, and will be defaulted
to false.

Bug: 202854971
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserCapabilitiesTest"
Change-Id: If090fe8d902d6521acfde8c26e801aa4fc4f5ff4
2022-01-11 12:50:15 +00:00
Yasin Kilicdere
7eeb727614 Merge "Add logging for settings entrypoint to add supervised user." 2022-01-07 20:58:14 +00:00
Yasin Kilicdere
3a0ebebac4 Add logging for settings entrypoint to add supervised user.
Bug: 213442701
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: Ie6110b0ef5c16c9f83e3d939f78f21f003e55e35
2022-01-06 23:21:59 +00:00
Edgar Wang
359512cd95 Fix bypass CALL_PRIVILEGED permission in AppRestrictionsFragment
In onReceive of AppRestrictionsFragment.java, there is a possible way to
start a phone call without permissions due to a confused deputy.
This could lead to local escalation of privilege with no additional
execution privileges needed.

We should not allow the restrictionsIntent to startActivity simply
because it resolves to multiple activities.
Instead, we should call resolveActivity and check the result's package
name is same as current package name, then it is safe to startActivity.

Bug: 200688991
Test: manual verify
Change-Id: Iaa2d3a9497c3266babe0789961befc9776a4db7a
2022-01-07 00:07:16 +08:00
Michael Groover
d1f76eea72 Merge "Add unaudited exported flag to exposed runtime receivers" 2022-01-03 17:35:02 +00:00
Yasin Kilicdere
cc1d210fd0 Create a simple fallback activity for supervised user creation
Create a simple fallback activity to be started if no other activity could be
resolved when Add supervised user option is tapped in Multi User settings.

Bug: 207495450
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: I850a2798567787c2494c75aa5fa451ddf373410d
2021-12-14 15:39:42 +00:00
Yasin Kilicdere
2a37149ec5 Add settings entrypoint to add a supervised user
Bug: 205101183
Bug: 199868785
Test: croot && make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.users.UserSettingsTest"
Change-Id: Ie69786c81ec938f4c4108d7fc9c0874776331865
2021-12-14 14:47:53 +00:00
Michael Groover
911f7e7aa9 Add unaudited exported flag to exposed runtime receivers
Android T allows apps to declare a runtime receiver as not exported
by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag;
receivers registered with this flag will only receive broadcasts from
the platform and the app itself. However to ensure developers can
properly protect their receivers, all apps targeting T or later
registering a receiver for non-system broadcasts must specify either
the exported or not exported flag when invoking #registerReceiver;
if one of these flags is not provided, the platform will throw a
SecurityException. This commit updates all the exposed receivers
with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing
behavior of exporting the receiver while also flagging the receiver
for audit before the T release.

Bug: 161145287
Test: Build
Change-Id: Ie97372efebd8258d9a4c503771d55109a85e6ae9
2021-12-09 20:34:02 -08:00
Adam Bookatz
cd429e74db Merge "Use UM.canAddMoreUsers and UM.isUserTypeEnabled" 2021-11-29 21:00:48 +00:00
Adam Bookatz
8ca17560e5 Use UM.canAddMoreUsers and UM.isUserTypeEnabled
Settings shouldn't allow creating users if the type is diabled, and it
shouldn't allow creating more of a particular user type if no more can
be created (even if more can be created of other user types).
Previously, Settings didn't take into account the user type when
querying whether more users could be created.

Bug: 192577100
Test: com.android.settings.users.UserSettingsTest
Change-Id: I065478fd14779f528be4edce8ae215391a752ef4
2021-11-23 14:55:28 -08:00
Adam Bookatz
45650159ce Merge "Multiuser perfetto metric: Settings tracepoints" 2021-11-11 17:10:42 +00:00
Adam Bookatz
c2efde5fb0 Multiuser perfetto metric: Settings tracepoints
Add tracepoints in Settings for user switches and creation, for the
primary purpose of performance metrics in trace_processor.

Bug: 192001071
Test: manual
Change-Id: I1ecaccdaba3b14c42a45fefeb9b5568f7c7d6bf6
2021-11-08 18:00:48 -08:00