Having consistent import order will reduce chance of merge
conflict between internal and external master
Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
And switch to getId() instead of title when comparing 2 tiles. This is
more accurate and more efficient.
Bug: 77600770
Test: robotests
Change-Id: I587d90702d98956bf7b420529ac3280351ca4a10
And each page has ability to turn on/off rounded icons. This CL only
adds the flag, it doesn't actually change icon shape yet.
- Boolean config in xml
- New protected method for each DashboardFragment to load config
- Plumb the boolean into DashboardFeatureProvider for future use.
- Remove some unused APIs from DashboardFeatureProvider
Bug: 110405144
Fixes: 79748104
Test: robotests
Change-Id: Id34782e75aa7289967e4dd1f4fe2978688092702
When refreshing the Accounts settings UI, we uses the cached user info
for checking user status. However, when the work profile is being
updated, the UserInfo obejct for the user might be updated even the
user id is the same. Using the cached data causes stale info to be
returned for the user and results in the latest account data not
being shown properly for the user. Update the cache to the latest user
info retrieved from user manager.
Change-Id: Ic0127842203f0288f2fdea6c6346cd11e42a8bf0
Fix: 38302246
Test: make RunSettingsRoboTests
Fix all Roboletric test cases.
In this CL, some test cases are broken.
So, We ignored these test cases temporarily.
Test: make RunSettingsRoboTests -j56
Bug: 110259478
Change-Id: I1a3075438a614432a2de4f2d96d8abf9a83ce58c
When running monkey, the authority in the preference might not have been
properly set. Add a check for valid authority before trying to update
the sync automatically setting.
Change-Id: I59f910565fc9f128e86bd92337135fe46fed12e1
Fixes: 80551551
Test: make RunSettingsRoboTests
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.
The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.
Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.
Bug: 78910582
Bug: 79245656
Test: robotests
Change-Id: I58821a6cfd6134b3b351657b6edf5f74ead00643
Currently in Settings we are using R.string.join_many_items_first, R.string.join_many_items_middle and R.string.join_many_items_last to manually join strings. The join code is messy and the joined string is incorrect in some languages, so we migrate all string join to just use ListFormatter.getInstance().format().
Bug: b/78248791
Test: robotests
Change-Id: I898339978e6e2027587e28994b0280fa46821fd6
- Build a controller to generate/manage a list of preferences.
- Move some logics to the controller and add tests.
- Rename to ChooseAccountFragment.
Bug: 73899467
Test: make RunSettingsRoboTests -j
atest UniquePreferenceTest SettingsGatewayTest
Change-Id: Id2906c4b922ef159d08c803b976671264c54665f
- Move preference related logic to Controllers.
- Add some test cases for controllers.
Test: manual
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.accounts
make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.core
atest SettingsGatewayTest UniquePreferenceTest
Change-Id: If4fcd7bf572672c886d5c91b2d15013817d1aa67
Some apps might contain account synclets with empty authority. Settings
UI should protect against this type of synclets. Otherwise clicking on
these synclets will crash.
(Also removed some strings that are no longer needed)
Change-Id: I364b45fc67679aa287ff1e04e6f5ac749116543a
Fixes: 74240862
Test: robotests
is set.
createAdminIntentSupport always checks user restrictions on user 0(
if called from system uid) so can't be used here when account could
be work profile account.
Bug: 70674230
Test: m -j RunSettingsRobotests
Change-Id: Ibd2df8891d9fa7b4c85c42a305c5db2acd4c829b
This allows Settings to test against the latest framework changes.
Also replaced TestConfig with traditional robolectric.properties.
Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
If an account type has no valid label, null is returned. Check the value
to make sure that it is a valid label before adding it to the summary.
Change-Id: I0cf3ef9a976e1a7fe16720da237f416c674791fc
Fixes: 73375480
Test: make RunSettingsRoboTests
- Hide add user button when it's not functional
- Display "No accounts added" under accounts setting when there is no account.
Change-Id: Iefede9939d206eb3064fa22bdcfbcb1e826f29ab
Fixes: 72643060
Test: robotest
Test: 72713118
- Rename UserAndAccountDashboard* to AccountDashboard*
- Move emergency info from account to device info page
- Move auto sync data toggles (4 of them) from Account page to user page
- Move the controllers too. UserSettings is a not a DashboardFragment
so I had to manually call each controller method.
TODO: refactor UserSettings to a DashboardFragment
- Move legal information/regulatory info above advance button within device info page.
Fixes: 72523158
Bug: 71871075
Test: robotests
Change-Id: I1b8af8af61e49d17926f984978a09a974b6c62e1
- prevent the test from hanging due to passing a deep fragment mock
Test: make RunSettingsRoboTests -j40
Change-Id: I60b6f32b19563dbcd25eda9d98a8c0266480a3f9
- Remove additional_system_update pref device_info page, we don't need
it.
- Update keys in xml and Preference controller, and search index
provider.
- Clean up in ScreenZoomPreference, it's anti-pattern to set fragment in
constructor.
- Whitelist 2 that are super hard to remove.
Change-Id: Ibab6e2cb074513042a2ae007d9085aa64046eec8
Fixes: 67852637
Test: uniquePreferenceTest
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.
Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
In my testing, this reduces the runtime of the Robolectric Settings test
suite on my Z840 workstation from 440 seconds to 402 seconds on average.
By avoiding having a method-level Robolectric shadow import, we avoid
going down a code path which needs to add more shadows later in the
Robolectric execution.
Bug: 64808827
Test: Settings robotests still pass
Change-Id: I7b40d73b30306ae3f9759281afbd7f7266579e24
When DISALLOW_MODIFY_ACCOUNT is set by a device admin, and
the user wants to remove an account, show the support dialog
instead of showing the confirm dialog.
To use the O-API DPM.createAdminSupportIntent(), a wrapper
needs to be used, because existing Robolectric tests otherwise
don't compile.
Bug: 37413849
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER=*RemoveAccountPreferenceControllerTest
Change-Id: If23ea304ab8b9df1748e6acf3032310843b04780