Commit Graph

393 Commits

Author SHA1 Message Date
Mill Chen
623eb5a904 Create the default static cards for Contextual Settings Homepage
Adding three default ContextualCard data to CardContentProvider, in case
of empty database or no SettingsIntelligence, to keep Contextual
Settings Homepage working well.

Bug: 113372471
Test: visual, atest SettingsHomepageActivityTest
Change-Id: Id7b26818e10f7945b2618100901310a005d8cc0d
2018-09-28 14:23:14 -07:00
Aurimas Liutikas
b1af85d155 Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
Merged-In: I941dea40562170649bf056e675cc32e5163c0e39
(cherry picked from commit a290b873d0)
2018-08-28 11:48:56 -07:00
Matthew Fritze
7f0a30226a Refactor WifiSlice to CustomSliceManager
Modify the WifiSliceCode to follow the pattern for
Slices that do not match existing UI components.

Test: robotests
Bug: 80263568
Change-Id: Id69e019608777282f4b64ff945e8c30c97aaf577
2018-08-20 08:03:34 -07:00
Felipe Leme
9bf591b832 Added autofill options on Developer Options screen.
Test: manual verification
Test: atest AutofillResetOptionsPreferenceControllerTest\
            AutofillLoggingLevelPreferenceControllerTest
Test: runtest --path packages/apps/Settings/tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java
Fixes: 65700540

Change-Id: I6b35fbf549529f4d97df164ce3fb6d641ee37650
2018-07-26 09:53:11 -07:00
jackqdyulei
dd9b8af6b9 Remove the anomaly detection added in O-DR
1. Remove unused class and resources
2. Update function in AdvancedPowerUsageDetail since
we don't need pass in anomaly anymore

Change-Id: I96fbe5ddaae902b34b756c7aae0338e49afef1f3
Bug: 74529048
Test: 1. manual test in settings page. 2. robo test still pass
2018-07-17 12:42:43 -07:00
tmfang
f12e6adcdc Settings Fragment Migration (Fix test cases)
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
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
Kevin Chyn
871e55fc54 Move Fingerprint settings to biometrics/fingerprint
Bug: 110589286

Test: make -j56 RunSettingsRoboTests
Test: adb shell am start -a android.settings.FINGERPRINT_ENROLL still works
Test: adb shell am start -a android.settings.FINGERPRINT_SETUP still works
Change-Id: If33b557137cae7b57e4a0e906ee95032bc589436
2018-06-25 16:51:16 -07:00
Fan Zhang
807dfbb0ad Misc tweaks to create shortcut handler
- Add restriction to only allow system apps provide shortcuts
- Load icon from target package when building shortcut icons
- Codestyle clean up

Change-Id: If9e5c5e60601efda216ce2cc2d4fd7beb44279e1
Fixes: 110393916
Test: visual, robotests
2018-06-19 12:42:18 -07:00
Matthew Fritze
111fc0344b Merge "Fix DND crash from SpringboardActivity" into pi-dev am: 3f790b76b0
am: 7fcbaf4ac9

Change-Id: I999288a61ebc780986ed108cd0b255db6ee4d791
2018-05-29 12:52:43 -07:00
Matthew Fritze
a559103b1b Fix DND crash from SpringboardActivity
Special case Uris need to explicitly add their intents.
This unfortunately duplicates a list of special-cased Slices,
but I have attached a bug with a plan to address this duplicity in Q.

Change-Id: I346915c32543713d33716422018d7c950cce323d
Fixes: 80065409
Test: atest SliceDeepLinkSpringBoardTest
2018-05-25 13:35:23 -07:00
Ching-Sung Li
feae5d79cf Remove OverlayManagerWrapper class out from Settings
Remove OverlayManagerWrapper and use IOverlayManager instead. Based on
comment from reviewer to refactor ThemePreferenceController.

Bug: 76167422
Test: RunSettingsRoboTests
Change-Id: I0bddf50d8ea7721fe258a9a9b51f8c56dd5afcce
2018-05-25 12:59:18 -07:00
Todd Kennedy
4fa4eeb675 Merge "OMS: rebase settings when overlays update" into pi-dev am: 203b7b1792
am: 45d58cab2c

Change-Id: Iab503a1196a7412d101e4c5c7831785bf5fd18bb
2018-05-11 11:53:09 -07:00
Todd Kennedy
203b7b1792 Merge "OMS: rebase settings when overlays update" into pi-dev 2018-05-11 17:44:53 +00:00
Fan Zhang
4979f434fc Merge "Fix a typo in AndroidManifest.xml" into pi-dev am: 3a9fbac582
am: e50f5effa0

Change-Id: I68689c03344b1987b905b32f95f91d82b5a9e129
2018-05-10 11:32:23 -07:00
Todd Kennedy
94fecb94e9 OMS: rebase settings when overlays update
When an overlay package has been upgraded, OMS needs to reconcile any
previous settings about the overlay with the new state of affairs.
Sometimes it is possible to rebase the OMS settings on the new
information [e.g. the overlay has changed categories]; sometimes the OMS
settings have to be scrapped [e.g. the overlay has changed target
package]. Update OMS to do The Right Thing.

Bug: 78809704
Test: manual (adb shell stop, adb push specially prepared overlays, adb shell start, adb exec-out cmd overlay dump)
Test: ran unit tests
Test: adb install out/target/product/walleye/data/app/SettingsUnitTests/SettingsUnitTests.apk
Test: adb shell am instrument -w -e class com.android.settings.display.ThemePreferenceControllerTest com.android.settings.tests.unit/android.support.test.runner.AndroidJUnitRunner
Test: NOTE: 3 of 4 failures both pre and post change; looks like there are issue with the unit tests themselves

Change-Id: Icd1ae633dbee5b5ca957fa6b652af6209b4b1260
2018-05-10 11:02:42 -07:00
Fan Zhang
66156d68e7 Fix a typo in AndroidManifest.xml
And some drive-by clean up.

Change-Id: Ic036f8f5bec8064a5d55e0e032ce45e483323b14
Fixes: 78889604
Test: atest
2018-05-09 18:06:27 -07:00
hjchangliao
e86eec0c07 Rename SubSettingLauncher.setTitle, add java doc
For make this method usage more clear,
setTitle(charSequence) rename as setTitleText,
add java doc: it is only for user generated string
setTitle(int) rename as setTitleRes.

Change-Id: I972cb6a8ff90873dfdc25c23f6dc3d68103c8e4e
Fixes: 78347436
Test: make RunSettingsRoboTests
2018-05-09 10:00:05 +08:00
Fan Zhang
10b4bc01f1 Merge "Add a test to verify lifecycle events are triggered" into pi-dev am: 139ebd91c0
am: cd3e50d4a5

Change-Id: I01d49c423c5ef56d59a51a2f03b4f11d956e19bc
2018-05-01 12:33:06 -07:00
Fan Zhang
1f1c7042f5 Add a test to verify lifecycle events are triggered
- Added a footer in feature flags, displaying "Experimental" during
  onStart.
- Ui test to verify the text shows correctly.

Change-Id: Ibf4f79cb3c12e460384e83201a16005a18d6437d
Fixes: 78887450
Test: atest
2018-05-01 01:32:49 +00:00
HJ ChangLiao
5693be2863 Replace PackageManagerWrapper with PackageManager
Replace all SettingsLib/PackageManagerWrapper in Settings,
by PackageManager,
Remove ShadowPackageManagerWrapper.

Bug: 62067063
Test: make RunSettingsRoboTests
Change-Id: I6d1af55c13d80c1907b98b21e0207cc903cd9b1f
2018-04-24 15:12:31 +08:00
Lei Yu
1ddcf81ddc Update insert method for battery database am: 4bfbaa6047
am: 71dca7d131

Change-Id: Id7d1247efd12ead31584e46126108b5370bd1101
2018-04-23 14:37:30 -07:00
Lei Yu
4bfbaa6047 Update insert method for battery database
1. Add conflict code to ignore the confliction and return -1 when
insert fails.
2. Add boolean return value to show whether insert sucessfully
3. Add unit test. We don't write robo test because robolectirc use
"update" to shadow "insert" operation, which returns the wrong data.

Bug: 77968649
Test: SettingsUnitTest
Change-Id: Ibd3b53cdb1796d74ea4a2ca1f067e2b302b939e9
2018-04-23 13:13:56 -07:00
Lei Yu
fca1b345cc Merge "Fix bugs in auto restriction." into pi-dev am: f6e2c19fcc
am: a9e4d4a42a

Change-Id: If82969696eb492ea3875a0e0fb92f038024f00f9
2018-04-23 10:13:31 -07:00
Lei Yu
f6e2c19fcc Merge "Fix bugs in auto restriction." into pi-dev 2018-04-23 17:03:39 +00:00
Fan Zhang
0e5a3273af Catch exception when failing to create slice
- Created a non-generic exception type when failing SliceData.build()
- Catch exception and log error instead of crash.
- Added a presubmit test

Fixes: 78347031
Test: robotests, atest
Change-Id: I06e528cb5e1cd328f82f9561553f3c4b5b0bed26
Merged-In: I06e528cb5e1cd328f82f9561553f3c4b5b0bed26
2018-04-20 23:55:39 +00:00
Fan Zhang
2a7fcc4d6f Catch exception when failing to create slice
- Created a non-generic exception type when failing SliceData.build()
- Catch exception and log error instead of crash.
- Added a presubmit test

Fixes: 78347031
Test: robotests, atest
Change-Id: I06e528cb5e1cd328f82f9561553f3c4b5b0bed26
2018-04-20 15:46:35 -07:00
Lei Yu
252d4e1fc0 Fix bugs in auto restriction.
1. Dismiss this tip once user clicks it and goes to detail page.
2. In auto restriction, since apps are automatically restricted,
we need to remove apps in list that unrestricted by user.
3. Refactor the code to remove the unnecessary parameter(i.e.
SettingsActivity)

Bug: 78187414
Test: RunSettingsRoboTests
Change-Id: I1c950f7c55df35795641c2ea8579ce9e011dba28
2018-04-20 12:55:53 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Lei Yu
689ac2e67d Merge "Add ui tests for restrict app tips" into pi-dev am: 79580c94a7
am: 48aac7f5d1

Change-Id: Ia9b4d3139ddc132b57eeb548f67dd41147c3ef15
2018-04-11 18:21:39 -07:00
Lei Yu
2c13459b5c Add ui tests for restrict app tips
Add anomaly data to database then check whether it shows correct
data in settings UI.

We can also use this test to trigger anomalies and test it manually.

Change-Id: Ic4bbe3de1e828415b9b3f1180cbb41c737b43232
Fixes: 77477035
Test: atest SettingsUnitTest
2018-04-11 11:00:03 -07:00
Nicolas Geoffray
761c47628b Merge "Exempt tests from hidden API checks." into pi-dev am: 8838b3fa9c
am: b3ef209fc6

Change-Id: I7c8b34160f79e103da7907f77ae8991595e3d941
2018-04-06 14:00:39 -07:00
Nicolas Geoffray
932679b141 Exempt tests from hidden API checks.
Bug: 64382372
Bug: 74963051

Test: m
Change-Id: I4e51a8a7d86ac79668f66057daf550a8f04711dd
2018-04-06 14:55:46 +01:00
Fan Zhang
1aeea9a9f8 Merge "Fix a bug where homepage is using staled locale for tiles" into pi-dev am: 086dbda475
am: a91023c9bc

Change-Id: I6bcb88bad6357ee4c2caba8b6a8df5147e657af0
2018-04-04 22:09:07 -07:00
TreeHugger Robot
086dbda475 Merge "Fix a bug where homepage is using staled locale for tiles" into pi-dev 2018-04-05 04:57:46 +00:00
Fan Zhang
f1030e8cdf Fix a bug where homepage is using staled locale for tiles
When setting a new locale, SettingsActivity restarts to load
everything in the new locale.

Data (containing locale specific title/summary etc) is reloaded
correctly and triggers a callback to UI to redraw.

However we skip the first callback as an optimization for app startup
time. When we restart fragment, we failed to save the state whether we
have already seen the first callback. So when data with new locale text
triggers the callback, it's being skipped and this make UI still render
in old locale.

The fix is to just save the state before fragment gets destroyed before
locale change so the callback can trigger later.

A better fix is: make data (Tile object) not cache text. Then we don't
need to worry about locale cache at all. We should do this fix in the
long term.

Test: localeswitcher
Test: adb shell am broadcast -a com.google.android.testing.i18n.localeswitcher.CHANGE_LOCALE -e LANGUAGE_TAG "zh"
Test: adb shell am broadcast -a com.google.android.testing.i18n.localeswitcher.CHANGE_LOCALE -e LANGUAGE_TAG "ja"

Fixes: 77470788
Bug: 77600770

Change-Id: Ic4223ddbb679db64d0fc3c29d16a5f61a66cc99c
2018-04-04 17:29:45 -07:00
Matthew Fritze
688ad64e00 Merge "Fix crash in non-indexable keys collection" into pi-dev am: 66e6e637a4
am: acc93635c3

Change-Id: I78aab2e3b7bc6f621e2425a88f3787e29f6ec2ff
2018-04-04 17:20:54 -07:00
Matthew Fritze
3cd543fb85 Fix crash in non-indexable keys collection
Some of the AmbientDisplay preference controllers were
crashing when their isAvailable methods were being called
by their fragment's search index providers, which meant that
the entire collection of non-indexable keys failed. Thus,
all search results were showing up. In the case of a secondary
user, they were able to see developer options which crashed
settings when clicked.

There are two issues addressed in this cl.
1. Fix the crashes so the non-indexable keys collection works
2. Contain each fragment's collection, so that if a fragment does
crash, the damage is minimized.

Part 1 is checking that the config in isAvailable is not null,
and creating one if so.

Part 2 is fixed by surrounding the collection of non-indexable
keys in a try-catch, with an option in the catch to re-throw the
error if a system property is set. Thus, in a new pre-submit
instrumentation test, we can and docheck if any of the fragments crash
when collecting non-indexable keys.

Change-Id: I820bd9cb2649aa6faff7f82fcf575a62e41dc4fc
Fixes: 77486668
Test: atest NonIndexableCrashTest, robotests
2018-04-04 13:36:33 -07:00
Tony Mantler
0fcd6cbaa8 Autogenerate SearchIndexableResources subclass
Bug: 77148954
Test: RunSettingsLibRoboTests RunSettingsRoboTests RunSettingsGoogleRoboTests RunArcSettingsRoboTests
Change-Id: I842c42c55014c3310070ef22bd4f0d9a70dfd804
2018-04-03 10:26:55 -07:00
Fan Zhang
947a673f74 Remove more wrappers
- WallpaperManagerWrapper
- UserManagerWrapper

Bug: 76167422
Test: robotests
Change-Id: I3ca866089082e01f1e9d7a4554387962f45a5437
2018-04-02 16:51:40 -07:00
Neil Fuller
cbaa984cde Merge "Show time zone used in or after 2018 only" into pi-dev 2018-03-23 17:18:36 +00:00
Victor Chang
490e46e01b Show time zone used in or after 2018 only
- Year 2018 is picked as the new time zone data
for picker is introduced in 2018. I can be adjusted
in the future to show more merged time zones.
- Add test to ensure each region has at least
one time zone.
- Fix a issue not using a singleton of TimeZoneData
  in commit 6c33caad4b

Bug: 72142943
Test: atest SettingsUnitTests:TimeZoneDataTest
Change-Id: I5eba7fbd59a2d3fd2e8062c9615946dc4bbb6314
2018-03-23 08:23:51 +00:00
TreeHugger Robot
61e6b87e7d Merge "Recover print job ID from intent extras" into pi-dev 2018-03-21 17:29:35 +00:00
Fan Zhang
10420706e6 Merge "Remove SettingsLaunchPerformance test" into pi-dev 2018-03-21 16:53:47 +00:00
Philip P. Moltmann
b85ab7e979 Recover print job ID from intent extras
If the fragment was started via ACTION_PRINT_SETTINGS the intent extra
does not get transformed into a fragment argument. Hence need to check
the intent extra.

Fixes: 74456525
Test: Opened print job settings from a print notification,
      atest com.android.settings.print.PrintJobSettingsActivityTest
Change-Id: I6c4605309c348456a862c4d7b48a11400b62fb70
2018-03-21 08:13:45 -07:00
Fan Zhang
ff0228091f Remove SettingsLaunchPerformance test
Bug: 74834445
Test: TH presubmit
Change-Id: I3ab181a867480f7c61d12d2f5c1490f48b2024c8
2018-03-20 14:29:56 -07:00
TreeHugger Robot
a2da6221c0 Merge "Update AndroidTest.xml to be APCT suite ready" into pi-dev 2018-03-20 02:13:47 +00:00
jdesprez
881004ca26 Update AndroidTest.xml to be APCT suite ready
Test: atest SettingsUITests
Bug: 74440293
Change-Id: Id7940589a5cd216668ab4664bb802faaf70b5f68
2018-03-19 14:46:45 -07:00
Lei Yu
301a89d726 Remove dupe key in UniquePreferenceTest
The duplicate page already removed in b/70848054, we need to update
the test.

Change-Id: Ia1f313d211e7528311e56596dbab152aad54bf22
Fixes: 70848054
Test: runtest -x UniquePreferenceTest
2018-03-16 18:19:17 -07:00
Fan Zhang
3b47e5bc9f Reuse xml parser logic to scrape preference xml files.
Bug: 73668763
Test: atest
Test: robotests
Change-Id: Ifc241b5b4ec6d2935c4c532ff902a7ba352a98d6
2018-03-05 14:20:19 -08:00