Commit Graph

343 Commits

Author SHA1 Message Date
TreeHugger Robot
7b58b02285 Merge "Improve multi user settings screen" into rvc-dev am: e26de87100
Change-Id: I248a2b3ed0e09f11838e1530167fd39a3a93f120
2020-05-08 02:48:04 +00:00
Andras Kloczl
4d7d4effa5 Improve multi user settings screen
- Added switch and user delete functionality to details screen.
- Added robo tests.

Screenshots: http://shortn/_S6fbIMhAYO
Bug: 142798722
Test: Run robo tests with this command:
  make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.*SettingsTest"
Change-Id: Ied67290e8fed87feb0a60a3f2c40eb91cc57988e
2020-05-07 22:01:33 +01:00
Edgar Wang
bbf642d994 Merge "Revert "Improve multi user settings screen"" into rvc-dev am: e13919cf4b
Change-Id: I057a3f120e9664fd4764599e14b6d136da56da85
2020-05-07 09:45:37 +00:00
Edgar Wang
fff8c56de2 Revert "Improve multi user settings screen"
This reverts commit d19dc306dd.

Reason for revert: this CL made Settings the test cases called shadowUserManager.hasUserRestriction()
https://sponge.corp.google.com/target?show=FAILED&sortBy=STATUS&id=07150153-ccb7-4215-a9f8-eed31e44c66f&target=RunSettingsRoboTests1-test-output

Bug: 142798722

Change-Id: I3937a07ee35a472cadd6db8cd0177e08e63516a4
2020-05-07 09:24:47 +00:00
András Klöczl
e9a1ca5936 Merge "Improve multi user settings screen" into rvc-dev am: 509ae917a4
Change-Id: I8c3296ea5faaf4bd727741abcd7fd42ee397b30a
2020-05-05 17:43:46 +00:00
Andras Kloczl
d19dc306dd Improve multi user settings screen
- Added switch and user delete functionality to details screen.
- Added robo tests.

Screenshots: http://shortn/_S6fbIMhAYO
Bug: 142798722
Test: Run robo tests with this command:
  make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.*SettingsTest"
Change-Id: Id51c12c5470e30e2dffe93f3bd8c22380d8bdc1f
2020-05-05 13:45:01 +01:00
TreeHugger Robot
36b3b9a035 Merge "Revert "Don't write user_switcher_enabled value when enter this Settings"" into rvc-dev am: e13a54c438
Change-Id: Iea4d243399d902cc785be33a976e7a481160be46
2020-04-15 17:14:33 +00:00
TreeHugger Robot
e13a54c438 Merge "Revert "Don't write user_switcher_enabled value when enter this Settings"" into rvc-dev 2020-04-15 03:13:08 +00:00
Daniel Chapin
77c41c1a5a Revert "Don't write user_switcher_enabled value when enter this Settings"
This reverts commit 898d6b4d73.

Reason for revert: Causing a regression
Bug: 153944718

Change-Id: If96441618d32a65b0bae4c5c26fb3b278556cc8c
2020-04-14 15:47:48 +00:00
TreeHugger Robot
c09a33101c Merge "Don't write user_switcher_enabled value when enter this Settings" into rvc-dev am: c858484fe6
Change-Id: I9bcb302bfc2602be2242887245c44fa7975402a4
2020-04-13 13:44:41 +00:00
TreeHugger Robot
c858484fe6 Merge "Don't write user_switcher_enabled value when enter this Settings" into rvc-dev 2020-04-13 13:31:39 +00:00
Edgar Wang
898d6b4d73 Don't write user_switcher_enabled value when enter this Settings
Settings side should not set user_switcher_enabled value when user
just visit settings. It will force enable user_switcher_enabled
without user confirm.

Bug: 141372193
Test: manual & robotest
Change-Id: I1bbe166a45837919cbc22a7c42e72251e64cc67f
2020-03-26 23:19:29 +08:00
Ben Murdoch
63aded6f67 Merge "Move strings related to user creation to SettingsLib." into rvc-dev am: 7afced3599
Change-Id: I822c63ede7d0f92dbfe724731350fc140db88ef5
2020-03-24 10:45:25 +00:00
Ben Murdoch
7803f907c7 Move strings related to user creation to SettingsLib.
Test: Build, manually check device.
Bug: 147653252
Bug: 152038380
Change-Id: I921d7907eca5c6bd6585f89e5dd5b6b6222bc745
2020-03-23 14:23:23 +00:00
Automerger Merge Worker
818e26464d Merge "Update the OWNER files" into rvc-dev am: a38859b2b7
Change-Id: Ia773a05c5375a17f8745dd2edf41f7ecf6f20151
2020-03-11 11:29:17 +00:00
Sunny Shao
3d3757683c Update the OWNER files
Bug: 151179432
Test: manual review
Change-Id: I2bfd917c2bea2d71303ed9aecf29d850f12eec3d
2020-03-11 16:45:14 +08:00
Automerger Merge Worker
454dbfd402 Merge "Fix for User edit info dialog during rotation" am: c6603dfda8 am: 7cda6b423a
Change-Id: Ia6a3ca26dd3b2fdfce8df0cb21b24927fcb07bcb
2020-03-02 10:27:50 +00:00
Ben Murdoch
c20d548ad9 Fix NPE in AddUserWhenLockedPreferenceController.
Set LockPatternUtils in constructor, but allow it to be
overridden for tests.

Bug: 149511500
Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.AddUserWhenLockedPreferenceControllerTest"
Change-Id: I4148fec8eea9c76afebe45cc29c2c87775fd3b1e
2020-02-17 18:02:28 +00:00
Ben Murdoch
fa92269759 Revert "Revert "Show "Add users from lock screen" dependent on secure lock screen.""
And fix the failing test that caused the revert.

Bug: 148015798
Bug: 149209670
Test: make -j64 RunSettingsRoboTests

This reverts commit 666dacc32a.

Change-Id: I34bb82e621e009ec26c28835f309e7a5b996e9b3
2020-02-11 13:35:45 +00:00
Jon Spivack
666dacc32a Revert "Show "Add users from lock screen" dependent on secure lock screen."
This reverts commit 0149363a39.

Reason for revert: Droidcop: Potential culprit for Bug 149209670- verifying through Forrest before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: Ia1f1ce35ef5d93664cf665bea86a472376b84aab
2020-02-10 22:11:57 +00:00
Rafael Matias de Lima
9ddd3445f0 Fix for User edit info dialog during rotation
[issue]
1. Go to Settings > System > Multiple users;
2. Edit user info;
3. Take a picture in portrait mode;
4. Turn the device to landscape mode;

Observe selected image is not retained;

[rootcause]
Fragments no longer need to check if the dialog
is showing up during onSaveInstanceState.

[test]
1. Edit user info;
2. Select a picture;
3. Turn the device to landscape mode;
2020-02-07 11:35:48 -03:00
Ben Murdoch
0149363a39 Show "Add users from lock screen" dependent on secure lock screen.
SysUI only enforces this setting while a secure lock screen is set,
so it doesn't make sense to show it configurable while an insecure
lock screen is set.

Bug: 148015798
Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.AddUserWhenLockedPreferenceControllerTest"
Change-Id: I186b2339e9575e20b55e2e5c1dab3de624848fc5
2020-01-24 12:34:15 +00:00
Ben Murdoch
34462c0cb0 Refactor Add new user / restricted profile UX flow.
Incorporate the choose user name / avatar into the
user creation flow so that we don't end up with many
"New User"s.

Bug: 147653252
Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.users.EditUserInfoControllerTest"
Change-Id: Ie19230791d8b50c8ab04df89909606179364ebab
2020-01-23 11:11:02 +00:00
Raff Tsai
c898775914 Hide search box if it is called in initial setup wizard
- Search box is hidden if user set intent extra isSetupFlow true

Fixes: 135717823
Test: search box is hidden in the following command
adb shell am start -a android.settings.SETTINGS --ez isSetupFlow true

Change-Id: Ia3d955c9390d6b0eef9391b9b35b6a483eb63d26
2019-10-18 02:08:38 +00:00
Raff Tsai
6db277ebb7 Remove summary provider
- use SummaryProvider to provide the summary of UserSettings
- use WifiDisplayPreferenceController to replace the summary loader
in WifiDisplaySettings
- use ConfigureNotificationPreferernceController to replace the
sumary load in ConfigureNotificationSettings

Fixes: 141653158
Test: robolectric
Change-Id: Id5f5ed645707caa0b25ecae5252174cbf017651c
2019-10-03 15:04:36 +08:00
Raff Tsai
966fa01423 Use SettingsLib Indexable
- Use SettingsLib Indexable
- Directly use resource id in getPreferenceScreenResId

Bug: 135053028
Test: roboletric
Change-Id: I05f493b55e8b6e2091301e9231ba5615215618e6
2019-09-25 18:24:56 +08:00
Raff Tsai
ac3e0d0988 Directly use BaseIndexableProvider
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
2019-09-24 00:35:52 +08:00
Raff Tsai
1f30b1cd67 Merge similar BaseSearchIndexProvider code together
Bug: 135053028
Test: robolectric, check search_index.db contains the same items
Change-Id: If3c18a170b0e671690df1fdf26e59a421d2c48cd
2019-09-12 11:09:09 +08:00
Sunny Shao
7687e0b17d Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the UserSettings page.

Fixes: 140008560
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.users
Change-Id: If6da2bd2f6a72d8e61b8c8bca9e3179cfdee05e6
2019-08-26 17:08:31 +08:00
Bookatz
6a3f2bfe2a Merge "If cannot add restricted profile, don't suggest it" into qt-dev
am: a5018be48a

Change-Id: Ic94e5f918a0db96dd21d8f719231bb65f31bd613
2019-06-17 18:43:04 -07:00
Bookatz
673bc9d01c If cannot add restricted profile, don't suggest it
Previously, on devices that cannot add a restricted profile (e.g. most
phones), the Multiple users menu had an option to "Add user", whereas
for devices that can, the option read "Add user or profile". Now it only
says the latter, due to ag/6412347. We add back the original wording
here.

Fixes: 135294519
Test: manual confirmation on a phone that text says "Add user"
Test: m -j ROBOTEST_FILTER=UserSettingsTest RunSettingsRoboTests
Change-Id: Ia166b6ff9c69c0042e8a781be1146a5622177121
2019-06-17 18:33:16 +00:00
Colin Cross
807e861105 Use if instead of switch for resources
Converting to Soong will move some code from directly compiled
into the app to compiled into an Android library and then
shared between the app and the tests.  This will cause resource
IDs in the library to become non-final, which means they can
no longer be used in case statements.  Convert affect case
statements to if blocks.

Test: m RunSettingsRoboTests
Change-Id: I25742a374f06d3fa4decbfc0d223a350acc50881
2019-05-13 13:42:01 -07:00
TreeHugger Robot
9eef4964a4 Merge "Creates user_switcher_enabled setting to match setting" into qt-dev 2019-04-10 20:46:22 +00:00
Fabian Kozynski
a52961d803 Creates user_switcher_enabled setting to match setting
When the user enters UserSettings, the switch displays the setting as
on, but the setting is not created until the user modifies this for the
first time. This change makes sure that the setting is created when the
user enters UserSettings for the first time.

Fixes: 130270878
Test: manual, switch to second user and observe switcher icons.
Change-Id: I30bc5025c178da3668a76c828c34545c1d98b085
2019-04-10 15:22:20 -04:00
Fan Zhang
f2390512c1 Add null check in UserPreference
The comparator can get null objects according to bug report.

Fixes: 130144755
Test: manual
Change-Id: Ic8a332d390f411d2eb69c944fb7fd166d9961535
2019-04-08 13:55:58 -07:00
Raff Tsai
b508184d60 Remove "Add users from lock screen" from secondary users
Fixes: 124885010
Test: Robolectric, manual
Change-Id: I1c940fda2fa5f3da39c19bd119ac483024f5a83b
2019-03-07 13:20:02 +08:00
Raff Tsai
3fd80809cc Use Device Policy dialog in switchbar
We need to pop dialog when switchbar is disabled by Device Policy

Test: visual, robolectric
Fixes: 124855614
Change-Id: Ief65baa2c4912cb7c85d5eccc2c0f363d2fc898b
2019-02-27 09:38:52 +08:00
Pavel Grafov
19cf0b4580 Don't hide "Add user" when disallowed by admin
Bug: 125226170
Test: atest tests/robotests/src/com/android/settings/users/UserSettingsTest.java
Test: manual, with TestDPC
Change-Id: I347fae04030e04325a5ee5c634f782e554ece263
2019-02-21 13:38:53 +00:00
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00
tmfang
54a5d37190 Move LocationSettings to top level page.
- Create some location icons for different scenario.
- Remove Location in Security page.
- Move Location Setting to top level page.

Test: robotest, visual
Bug: 116628158
Change-Id: I3f57ef49a396877bfbeaefea7dc4f4051e0ccc65
2018-11-05 11:24:41 +08:00
Jonathan Scott
ba3b68686d Add policy transparency to disallow remove user.
On the Settings > System -> Multiple users screen, ensures that the"Delete from this device" menu is always available, but is disabled and includes policy information when DISABLE_REMOVE_USER is set.

Change-Id: Ia6c6cfb360f35a6e447bf9d85d2472ac11dde1ac
Fix: 113807450
Test: m ROBOTEST_FILTER=UserSettingsTest -j40 RunSettingsRoboTests; CTS Verifier Device Owner Tests/Policy transparency test/Disallow remove user.
2018-09-19 09:32:35 +01:00
Doris Ling
73d7773eb2 Fix visibility of AddUser when toggling multiuser.
- when enabling multi user, also need to update the visibility of the
Add user preference, but need to check the add user capability as well.

Change-Id: Ia243901c7537bdb39ca3a39aed559b003f803e4d
Fixes: 115397726
Test: make RunSettingsRoboTests
2018-09-12 12:33:46 -07:00
Doris Ling
e845b40f35 Do not show AddUser if adding user is not allowed.
- when multi user is enabled, we should keep the current visibility for
AddUser preference, since earlier check has been done to update its
visibility according to the add user capability. We should only set the
visibility to false if multi user is disabled.

Change-Id: I246e9242f255dbd57c5309b2d16c95d202607531
Fixes: 114241868
Test: make RunSettingsRoboTests
2018-09-07 14:08:49 -07:00
Philip P. Moltmann
e3f721132a RestrictedLockUtils was split into ...Internal
This means that in some cases RestrictedLockUtils has to be used and in
some RestrictedLockUtilsInternal.

This causes a lot of trivial code changes.

I also updated the ordering of the imports in all affected files.

Bug: 110953302
Test: Built
      make -j RunSettingsRoboTests
Change-Id: I9bdf8b89134f853bae4f38c81af436715c73e924
2018-08-30 08:11:39 -07:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Fan Zhang
a79c377fbc Declare "searchable" attribute for preferences.
Now we can easily mark a preference nonIndexable in xml instead of
adding key into searchIndexProvider.

Bug: 112608186
Test: robotests
Change-Id: I0ff16d44bb7b6ad148d3d35f09ca0da0163f73f4
2018-08-16 09:06:39 -07:00
Antony Sargent
dbe907b2cf Fix profile photo chooser
The underlying Dialog API changed when it returns true for isShowing()
in a way that broke our profile photo chooser, but it turns out it was
an intended change and we were depending on it in a way we shouldn't
have been. Instead we'll just keep track of whether we were showing the
dialog by using an already existing boolean flag that gets set before we
start the photo collection activity.

Fixes: 110101157
Test: make -j RunSettingsRoboTests
Change-Id: I166230e85142c348b6760e436324261f2a41f1e0
2018-08-07 14:51:24 -07:00
tmfang
41ab6b4bf8 Migrate all AlertDialogs to AndroidX version
This CL only changed AlertDialog imports.
So, reviewer can review it easily.

Change-Id: I097bc44394195b14287f4f920c570ac8653f356a
Fixes: 111413092
Test: This CL can't pass Robo test.
2018-07-20 11:32:13 +08:00
tmfang
27c84de325 Settings Fragment Migration (Build pass app)
This patch focused on fixing compile errors and some runtime errors.

Test: We can't test it now. But we will have an integration test later.
Bug: 110259478
Change-Id: I16c471ddcd0fa1460c665b7f74d86fcace5ee67b
2018-07-11 18:24:51 -07:00
tmfang
99cc23d0da Settings Fragment Migration (Change imports)
This commit *only* changes imports and optimize imports.
We don't do anything else.

This patch can't compile pass and run test case.
We will update other patches to fix these problem.

Change list.

1. import android.app.Fragment; ->
   import androidx.fragment.app.Fragment;
2. import android.app.DialogFragment; ->
   import androidx.fragment.app.DialogFragment;
3. import android.app.ListFragment; ->
   import androidx.fragment.app.ListFragment;
4. import android.app.LoaderManager; ->
   import androidx.loader.app.LoaderManager;
5. import android.content.AsyncTaskLoader; ->
   import androidx.loader.content.AsyncTaskLoader;
6. import android.content.Loader; ->
   import androidx.loader.content.Loader;
7. import android.app.FragmentTransaction; ->
   import androidx.fragment.app.FragmentTransaction;
8. import android.app.FragmentManager; ->
   import androidx.fragment.app.FragmentManager;
9. import android.app.LoaderManager.LoaderCallbacks; ->
    import androidx.loader.app.LoaderManager.LoaderCallbacks;

Bug: 110259478
Test: Can't test it.
Change-Id: I0a3f98fff34a3494a839c3c42aeabcec3df2c8b3
2018-07-11 18:23:51 -07:00