Commit Graph

333 Commits

Author SHA1 Message Date
Fan Zhang
af32e726e6 Allow activity to delegate onActivityResult to fragments
Change-Id: Iac388f1726269239313d666f3123f28348e0c90a
Fixes: 111531567
Test: rototests
2018-07-17 10:59:02 -07: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
Fan Zhang
af1552251f Add some pages to search index.
* Notification access page
* VR Listener page
* Feature flags in dev options
* QS Tile developer options
* User dictionary
* Billing cycle
* Some accessibilty pages

Bug: 70720645
Test: robotests
Change-Id: I4f7d3d65b2803cebf178ac345a79721232df707c
2018-07-11 16:39:29 -07:00
Fan Zhang
4560ab7a35 Add a few pages to search index.
- Data saver
- A few special permission access pages
   - Picture-in-picture
   - Premium sms
   - do not disturb access
- And a unrelated cleanup: move EmptyTextFragment from
  notification/ to widget/

Bug: 70720645
Test: robotests
Change-Id: I6a87f712bf81f9fd32fa9a3826fba851ca748409
2018-07-10 17:02:09 -07:00
Stanley Tng
068c2547f6 Add Feature Flag for Hearing Aid Profile
Using the Settings App-Developer Options-Feature Flag, allow the user to
enable or disable the Hearing Aid Profile.

Test: Manual testing using Settings App
Change-Id: I16b51d7feabc914219c24731eb39a23bd1782571
2018-07-02 12:50:51 -07:00
Raff Tsai
082f8ee93c Revert "Revert "First commit of dynamic home page feature""
This reverts commit 457f6ef140.

Reason for revert: fix the color check in repohook

Test: make RunSettingsRoboTests

Change-Id: I1b466c412138dfb0f2bffc4270a8932fe3b81c94
2018-07-02 16:02:26 +08:00
TreeHugger Robot
6acf0510fb Merge "Revert "First commit of dynamic home page feature"" 2018-06-29 01:24:49 +00:00
Lei Yu
457f6ef140 Revert "First commit of dynamic home page feature"
This reverts commit 3515bc7259.

Reason for revert: CLs in this topic break color check in repohook.

Bug: 110960820
Change-Id: I5934b6baf65515ebbc4e4660ed99747dd581f526
2018-06-29 00:21:14 +00:00
Raff Tsai
b2e6654be4 Merge "First commit of dynamic home page feature" 2018-06-28 07:43:59 +00:00
tmfang
d97fba5f0f Fork SettingsDrawerActivity in Settings.
Settings app uses fragment classes from android framework,
which is deprecated as of P.
We need to switch to use fragment and associated classes to androidx.

Because Settings didn't support drawer feature since Android O,
we rename SettingsDrawerActivity to SettingsBaseActivity.

Before we migrate to fragment of androix,
we need to let SettingsBaseActivity extend FragmentActivity.

Test: make RunSettingsRoboTests
Bug: 110259478
Change-Id: Ifbf53f75f042da1618da16cf7837b70d298a9a14
2018-06-28 13:38:16 +08:00
Raff Tsai
3515bc7259 First commit of dynamic home page feature
- Add SettingsHomepageActivity
- Add feature flag
- Use com.google.android.material_material library

Change-Id: I325be249f739d3b03dc2f0d722319f5771e2313b
2018-06-28 11:46:37 +08:00
Fan Zhang
f1f0f8bea6 Convert CreateShortcut to DashboardFragment
Created a new xml and CreateShortcutPreferenceController to deal with
querying package manager and display list on UI.

Bug: 74806595
Test: robotests
Change-Id: I0945245c3856d12b7751d26fca324d2dbf31b230
2018-06-22 11:30:56 -07:00
Salvador Martinez
d97ced5e3d Merge "Add unofficial intent for WifiTetherSettings" into pi-dev am: ce58bf2ee9
am: 4dc79faefb

Change-Id: I39ceae08df3e44fc2a732909ca2707e46fb1b7ca
2018-06-21 15:45:16 -07:00
Fan Zhang
7431c91de6 Remove search indexing pipeline from Settings
Index is already handled by SettingsIntelligenec. No longer needed in
Settings.

Change-Id: Id43fb3100dc2759185744441cff8cb9cd2d2da20
Fixes: 69808376
Test: robotests
2018-06-21 09:38:36 -07:00
Salvador Martinez
bb3337100c Add unofficial intent for WifiTetherSettings
This CL adds an intent that can be used to start
WifiTether Settings.

Test: SettingsGatewayTest still passes
Bug: 110235497
Bug: 80251951
Change-Id: Iac94e563a91b1f821f69f18234d8176350ae5f29
2018-06-20 09:17:08 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Fan Zhang
ca6d86c5ab Move device admin viewer/adder to specialaccess package.
Bug: 110207366
Test: robo
Change-Id: I51552dcc5ec6525040cfde17087b7f3f6b21b581
2018-06-15 08:56:14 -07:00
TreeHugger Robot
410c7ddcf7 Merge "Add a switchbar to turn off multi-user feature entirely" 2018-06-11 23:59:18 +00:00
Fan Zhang
c39238c63f Add a switchbar to turn off multi-user feature entirely
Change-Id: Ibf88bf37899af5065c68aeb2337acd4ee48bc13c
Fixes: 72319180
Test: robotest on new controller. Manual test on UserSettings fragment.
2018-06-11 15:00:08 -07:00
Fan Zhang
cd21cb8def Remove DataSummaryUsageLegacy.
Change-Id: I8da039530cafe547008b434b6016add5f9383e94
Fixes: 109943959
Test: robotest/atest
2018-06-11 11:05:54 -07:00
TreeHugger Robot
ad90960b6e Merge "delete DeviceInfoSettings and activity, pref xml" 2018-05-30 20:14:50 +00:00
stanley.tf_wang
828409a79d Modified the ManageDomainUrls
Test: manual
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.applications
      make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.core
      atest UniquePreferenceTest
      atest SettingsGatewayTest

Change-Id: Ib5b1281be6cb3cab8528d10b6d6ff3146f33b8df
2018-05-25 16:16:21 -07:00
Chihhang Chuang
6719a9b73e Refactor nfc preference controller
- Remove BaseNfcPreferenceController.
- NfcPreferenceController inherit from TogglePreferenceController.
- AndroidBeamPreferenceController inherit from BasePreferenceController.
- Override getIntentFilter in NfcPreferenceController to listen changes.
- Add an API (hasAsyncUpdate) into BasePreferenceController to
distinguish the setting which is updated asynchronously.

Change-Id: I1abe4410169e305a0d6106e24c54e7f2e763fc91
Merged-In: I7c9c48ea7f1ad01a02524beabf9d30baa3db891f
Fixes: 67997761
Fixes: 74887543
Test: RunSettingsRoboTests
2018-05-24 10:31:44 +08:00
Chihhang Chuang
3b387a028a Refactor nfc preference controller
- Remove BaseNfcPreferenceController.
- NfcPreferenceController inherit from TogglePreferenceController.
- AndroidBeamPreferenceController inherit from BasePreferenceController.
- Override getIntentFilter in NfcPreferenceController to listen changes.
- Add an API (hasAsyncUpdate) into BasePreferenceController to
distinguish the setting which is updated asynchronously.

Change-Id: I7c9c48ea7f1ad01a02524beabf9d30baa3db891f
Fixes: 67997761
Fixes: 74887543
Test: RunSettingsRoboTests
2018-05-23 13:58:28 +08:00
Matthew Fritze
1dd25fd87c Add isSliceable API to BasePrefController
Only support explicitly approved Settings Slices,
dictated by controllers which return true for the new
method isSliceable.

Updating the supported settings to a whitelist means that
the method to return all available slices must be updated,
and checking slicability when we index slices.

Test: robotests
Change-Id: I85848c2cdf3e151fa94b33dd1dc5c0374ef94b5b
Merged-In: Ib2b9690cdd0036b5cc4a1cb846c52bce7c824ab9
Fixes: 79779103
2018-05-22 22:43:24 +00:00
Matthew Fritze
bf1f5b5813 Add isSliceable API to BasePrefController
Only support explicitly approved Settings Slices,
dictated by controllers which return true for the new
method isSliceable.

Updating the supported settings to a whitelist means that
the method to return all available slices must be updated,
and checking slicability when we index slices.

Test: robotests
Bug: 79779103
Change-Id: Ib2b9690cdd0036b5cc4a1cb846c52bce7c824ab9
2018-05-22 11:06:42 -07:00
Gilbert Lee
0b4722f088 delete DeviceInfoSettings and activity, pref xml
Fixes: 78653510
Test: Manual

Change-Id: I13379f3f7812ceedffc0e9647db15e6358a3dc17
2018-05-20 16:17:43 +08:00
Matthew Fritze
4a6f058552 Add Intentfilter BasePreferenceController
For settings which can change in the framework, outside of
the settings app and a slice, a Slice needs to be able to
register a listener for these changes.

Adding a getter for an IntentFilter in BasePreferenceControllers
allows us to use the SliceBroadcastRelay in SysUi to listen for
these changes.

Test: robotests
Fixes: 78138654

Change-Id: I579375069ca98fd21b60cd3a69c1a122cabf96e2
Merged-In: Ifa05b651aaa3458c54866f71469964b1a070e458
2018-05-18 08:06:08 -07:00
Matthew Fritze
097dc80fc1 Add Intentfilter BasePreferenceController
For settings which can change in the framework, outside of
the settings app and a slice, a Slice needs to be able to
register a listener for these changes.

Adding a getter for an IntentFilter in BasePreferenceControllers
allows us to use the SliceBroadcastRelay in SysUi to listen for
these changes.

Test: robotests
Bug: 78138654
Change-Id: Ifa05b651aaa3458c54866f71469964b1a070e458
2018-05-18 08:04:18 -07:00
hjchangliao
a92271c26d Convert Magnify controller to TogglePrefController
Convert below to TogglePreferenceController:
MagnificationNavbarPreferenceController
(Magnify with Button)
MagnificationGesturesPreferenceController
(Magnify with triple-tap)

The two controllers share the same fragment,
Add static method for set/get state in fragment,
And use them in controllers and fragment.

Change-Id: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Merged-In: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Fixes: 67997698
Fixes: 67997726
Test: make RunSettingsRoboTests
2018-05-16 16:45:47 +00:00
hjchangliao
2f73a6646f Convert Magnify controller to TogglePrefController
Convert below to TogglePreferenceController:
MagnificationNavbarPreferenceController
(Magnify with Button)
MagnificationGesturesPreferenceController
(Magnify with triple-tap)

The two controllers share the same fragment,
Add static method for set/get state in fragment,
And use them in controllers and fragment.

Change-Id: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Fixes: 67997698
Fixes: 67997726
Test: make RunSettingsRoboTests
2018-05-16 16:05:41 +08:00
TreeHugger Robot
38be78fbea Merge "Make pref unsearchable for more availibility status." 2018-05-11 21:53:18 +00:00
TreeHugger Robot
d43283b53a Merge changes Ic9d1b08c,Id6db9ce2,I7b980218
* changes:
  Add zen starred contacts preference
  Clear deprecated effects when saving zen policy
  DND settings redesign
2018-05-11 20:33:10 +00:00
Fan Zhang
80376a5b46 Make pref unsearchable for more availibility status.
Bug: 72748524
Test: robotest
Change-Id: I12b13ac3503f851857787df98a2d2f599c71b9b7
2018-05-11 11:45:02 -07:00
Fan Zhang
8f699b270d Add a new enum to support available/non-searchable settings
Bug: 72748524
Test: existing robotests
Change-Id: I46b2b4a4fa33d8a94de83829cc1eddc99e89b247
2018-05-10 13:53:59 -07:00
Julia Reynolds
200da8978f DND settings redesign
Test: robotests
Change-Id: I7b980218feea28e945994c8b7f8a934df6bc11f9
Bug: 78447976
2018-05-10 13:25:35 -04:00
android-build-team Robot
02ec86a17b Merge "Establish permanently unavailable settings" 2018-05-09 18:14:32 +00:00
Matthew Fritze
bd376296cd Establish permanently unavailable settings
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
Fixes: 79245656
Test: robotests
Change-Id: I42c2cedab66be2d76999795f46470a079cc1ec71
Merged-In: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 10:03:40 -07:00
Matthew Fritze
f87a1f3f41 Establish permanently unavailable settings
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
2018-05-09 08:36:59 -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
Julia Reynolds
e9211d58d2 Merge "DO NOT MERGE DND settings redesign" into pi-dev 2018-05-07 18:25:52 +00:00
Julia Reynolds
cb6fe394d0 DO NOT MERGE DND settings redesign
Test: robotests
Change-Id: I7b980218feea28e945994c8b7f8a934df6bc11f9
Bug: 78447976
2018-05-04 14:45:43 -04:00
Christine Franks
77df09244e Add night display pref controllers and change UX
- Convert NightDisplaySettings to a DashboardFragment
- Add preference controllers for all Night Display settings
- Change UX for activation from a toggle to a button

Bug: 73739388
Bug: 69912911
Test: make -j100 and make RunSettingsRoboTests -j100
Change-Id: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
Merged-In: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
2018-05-04 09:35:29 -07:00
Christine Franks
d67ec89c4b Add night display pref controllers and change UX
- Convert NightDisplaySettings to a DashboardFragment
- Add preference controllers for all Night Display settings
- Change UX for activation from a toggle to a button

Bug: 73739388
Bug: 69912911
Test: make -j100 and make RunSettingsRoboTests -j100
Change-Id: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
2018-05-02 13:12:26 -07:00
Emily Chuang
b279b1c025 Migrate ChooseAccountActivity to DashboardFragment
- 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
2018-04-27 22:17:23 -07:00
Matthew Fritze
04926f35b7 Merge "Add keywords to Slices" into pi-dev am: 2f911e2e9e
am: 21521826d9

Change-Id: I38d9efabcdecf3c40f1af28ecd167e58c2586ca7
2018-04-20 20:27:02 -07:00
Matthew Fritze
47a44e8fa4 Add keywords to Slices
Attach the keywords used for Settings search to Slices.
Their primary use is helping match synonyms for presenters
which display slices without explicit Uri requests, like a launcher.

This changes:
- Updates database scheme
- Adds to SliceData object
- Grab keywords in the SliceDataConverter
- Set keywords on all slices

Test: robotests
Change-Id: I16c40d2380ffddaf0a87fb1b9cd58e95573b308f
Fixes: 78306195
2018-04-20 14:50:55 -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
sunnyshao
15ec2cf8ef Modified the PrivacySettings and add PreferenceControllers
- Changed the PrivacySettings to DashboardFragment.
- Added the new five related PreferenceControllers and related codes
- Modified the privacy_settings.xml
- Removed the PrivacySettingsTest test by design changed
- Moved the PrivacySettings.java from root directory to backup

Test: manual
Test: make RunSettingsRoboTests
Change-Id: Ic88e2e58a11d024d2394f75c3db5b46fe2d86dba
2018-04-18 18:02:53 -07:00