Commit Graph

2704 Commits

Author SHA1 Message Date
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
Aurimas Liutikas
03fcde338b Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
Merged-In: I941dea40562170649bf056e675cc32e5163c0e39
(cherry picked from commit a290b873d0)
(cherry picked from commit b1af85d155)
2018-08-28 16:35:52 -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
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
Yuchen Dong
20fb65fb84 Wrong Carrier Config values are used in ApnSettings for Multi SIM device
In ApnSettings, it always uses Carrier Config values of default subId.
So, wrong carrier config values are used for non-default subId.
To resolve this issue, read Carrier Config values based on subId.

Test: manual - Check Carrier Config values are read based on subId.
Bug: 111172301

Change-Id: I87e4cbb2e8020198fa03c2c84ef9bd10d5970341
2018-08-23 21:14:07 +09:00
jackqdyulei
a9fa4c1d05 Hook up feature flag to mobile network controller
Send intent to phone process if the flag is false.

Bug: 113069948
Test: RunSettingsRoboTests
Change-Id: Ie9726470e718144557f318fe7ea28e863d63679c
2018-08-22 17:58:09 -07:00
Jordan Liu
1aabc2cc4e Merge "Refresh subscription info when subid changes" am: 5226ac6110 am: 114cacf2a8
am: 611d824110

Change-Id: I29492ef016c8ca9836ecf28c787e441629cfecb0
2018-08-15 18:23:10 -07:00
Jordan Liu
b1facd2001 Refresh subscription info when subid changes
We store the initial subId and check if it has changed so that we always
have the updated subscription info in fillList().

Fixes: 111731641
Test: manually verify that swapping the SIM loads new APNs
Change-Id: I3475915f2c380fb67b2e56436423d491e489d91e
2018-08-15 11:37:24 -07:00
irisykyang
40f4f799bb Reload APNs setting page when receive the intent ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED
Bug: 77250264
Test: Manual testing
Change-Id: Ie28c67c89a2590425ff9c06153b53dac6cf141f0
Merged-In: Ie28c67c89a2590425ff9c06153b53dac6cf141f0
2018-08-14 15:55:43 -07:00
Fan Zhang
25d9f3812b [Dynamic Home] Make a new page for all top level settings
Since we are moving conditionals/suggestions to a different place, there
is no need to use DashboardSummary to display top level settings any
more. We can simplify a lot of code for top level settings and reduce it
to a standard DashboardFragment.

- Create a new DashboardFragment + xml for all top level internal items
- Add a PreferenceController to provide summary for Network & internet
  item.
- Mark a bunch of things deprecated for future work.

Bug: 110405144
Test: robotests
Change-Id: I9f778777131c28eb836b722e089e026a59f5ddc6
2018-08-08 17:20:15 -07:00
Jordan Liu
f546b97db9 Preserve leading 0s in mcc mnc
Fixes: 79408450
Test: ApnEditorTest.java
Change-Id: Iad7ffe04f23b30857588e50d7f5f0dd307bd2c6e
Merged-In: Iad7ffe04f23b30857588e50d7f5f0dd307bd2c6e
2018-08-08 11:35:15 -07:00
TreeHugger Robot
fa44a94aa9 Merge "Add a boolean flag to show or hide Private DNS in Network & internet." 2018-08-06 19:07:14 +00:00
Ben Lin
bc4b584446 Add a boolean flag to show or hide Private DNS in Network & internet.
The following boolean flag is added:
config_show_private_dns_settings

When set to false, Private DNS will not be shown in Network & internet.

Bug: 111398942
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=PrivateDnsPreferenceControllerTest
Change-Id: I62911930680355b7fc109b295d8526bdb7eac0b3
2018-07-26 12:12:25 -07:00
Ben Lin
96dc235f6e Check for WiFi controller for summary population.
WiFiController might return not available, so we should only surface
"Wi-Fi" as a summary entry if it's available in the settings page.

This also checks for empty strings in case they are declared as such in
the XML (since XML can be device/product overlay'd), to avoid situations
such as ", data usage".

Bug: 111398942
Test: Manual check, and I see Wi-Fi no longer visible for cases where
Wifi controller isn't available.
Test: make RunSettingsRoboTests
Change-Id: I24736a6240c50e2ea38ce424fbac2316721290d8
2018-07-25 14:14:11 -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
Fan Zhang
420f385a18 Fix a incorrect type cast for alert dialog
Change-Id: I2265c4510785f88ef7950cd29779848eb2e58dc4
Fixes: 111488148
Test: manual
2018-07-16 12:23:57 -07:00
Jordan Liu
a9ec524463 Merge "Preserve leading 0s in mcc mnc" 2018-07-13 20:57:52 +00:00
Jordan Liu
21d5942006 Preserve leading 0s in mcc mnc
Fixes: 79408450
Test: ApnEditorTest.java
Change-Id: Iad7ffe04f23b30857588e50d7f5f0dd307bd2c6e
2018-07-13 10:44:39 -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
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Pengquan Meng
1fc6859126 Merge "Remove internal ApnSetting."
am: 4079677883

Change-Id: I130a2038c2c5b289c107d9e640c038965ef60e34
2018-06-13 15:33:56 -07:00
yuemingw
ff2da57804 Remove internal ApnSetting.
am: ff73564ea0

Change-Id: I8faf14404a5e59f598cc531a776b53471cb17fce
2018-06-12 15:55:42 -07:00
yuemingw
ff73564ea0 Remove internal ApnSetting.
Remove com.android.internal.telephony.dataconnection.ApnSetting and
use android.telephony.data.ApnSetting instead.

Bug: 77511388
Test: existing test
Change-Id: I8ca1fb399026a8ef4ba9afa18678d986daa50606
2018-06-12 15:59:24 +00:00
Erik Kline
e1a5ac804d Merge "Factor in PRIVATE_DNS_MODE_DEFAULTSETTING value" into pi-dev am: 5a0a7ef4bb
am: cf83539e1e

Change-Id: Ia06f5bef6d4103cf65a2c07d8dadecfa815080f7
2018-05-23 15:59:09 -07:00
TreeHugger Robot
6be5e331cf Merge "Update airplane mode key to match framework constant" into pi-dev 2018-05-23 03:00:47 +00:00
Matthew Fritze
8f36eb8cfb Update airplane mode key to match framework constant
Change pref key for airplane mode to "airplane_mode" to match the
constant declared in SettingsSlicesContract.

Bug: 80106671
Test: robotests
Change-Id: I898befffbdafc3004fc127414edd04f60ff2554e
2018-05-22 18:51:11 -07:00
TreeHugger Robot
5a0a7ef4bb Merge "Factor in PRIVATE_DNS_MODE_DEFAULTSETTING value" into pi-dev 2018-05-23 01:02:39 +00:00
Matthew Fritze
8ad8516f48 Update airplane mode key to match framework constant
Change pref key for airplane mode to "airplane_mode" to match the
constant declared in SettingsSlicesContract.

Bug: 80106671
Test: robotests
Change-Id: I625bed440dd7f1f8509cd00ced5ba67f08a0e737
Merged-In: I898befffbdafc3004fc127414edd04f60ff2554e
2018-05-22 17:34:19 -07: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
Erik Kline
aee4396874 Factor in PRIVATE_DNS_MODE_DEFAULTSETTING value
This setting can be used to change the in-code default.

Test: as follows
    - built, flashed, booted
    - make -j50 RunSettingsRoboTests ROBOTEST_FILTER=PrivateDnsModeDialogPreferenceTest passes
    - make -j50 RunSettingsRoboTests ROBOTEST_FILTER=PrivateDnsPreferenceControllerTest passes
Bug: 79719289
Change-Id: I27e5fb9cc66dde1df72395c22179bca3f62ef782
2018-05-22 10:52:55 +09:00
Antony Sargent
28f04c984d Merge "Updated delete icon" into pi-dev am: 55642ef91b
am: d55b214dbd

Change-Id: Ifca325273ca5e99461a93487b127b5d0adcf6a39
2018-05-18 14:52:44 -07:00
TreeHugger Robot
55642ef91b Merge "Updated delete icon" into pi-dev 2018-05-18 21:38:51 +00:00
Antony Sargent
0d9afde271 Updated delete icon
Also remove the duplicate ic_menu_delete.xml and fix up places where it
was used.

Bug: 77982107
Test: manual
Change-Id: I23ede37b7cdf9bea59b44cd0f817bf0ad0cd1d69
2018-05-17 11:55:40 -07:00
Nitin Shivpure
ec5a3f9c01 Merge "Bluetooth: Fix to avoid BluetoothPan ServiceConnection leak" into pi-dev am: d924894652
am: 75787c8a77

Change-Id: Ib111a099149a8a6852f029d5c8b1334ea891a7fc
2018-05-16 16:43:00 -07:00
Nitin Shivpure
5ba33d1fd3 Bluetooth: Fix to avoid BluetoothPan ServiceConnection leak
Usecase:
1.) Make sure BT is turned off.
2.) Go to Settings -> Network & Internet
3.) Press back  from Network & Internet.
4.) Repeat above step 2000 times

Expected Result:
No ANR/Crashed should be seen.

Observed Result:
ServiceConnection leak is happening & android setting app get crashed.

Root cause: TetherPreferenceController tries to get
pan Proxy object, when BT is oFF, which is leaking one
service connection each time

Fix: getProfileProxy for Pan must only be called, when BT is
      turned on.

Test: lifeCycle_onCreate_shouldNotInitBluetoothPanWhenBluetoothOff

Bug: 79561076
Change-Id: I85208f48ce4dded94020cb156fcdb98b2cc873f9
Merged-In: I85208f48ce4dded94020cb156fcdb98b2cc873f9
2018-05-16 15:25:36 -07:00
Nitin Shivpure
1b0afb9d1c Bluetooth: Fix to avoid BluetoothPan ServiceConnection leak
Usecase:
1.) Make sure BT is turned off.
2.) Go to Settings -> Network & Internet
3.) Press back  from Network & Internet.
4.) Repeat above step 2000 times

Expected Result:
No ANR/Crashed should be seen.

Observed Result:
ServiceConnection leak is happening & android setting app get crashed.

Root cause: TetherPreferenceController tries to get
pan Proxy object, when BT is oFF, which is leaking one
service connection each time

Fix: getProfileProxy for Pan must only be called, when BT is
      turned on.

Test: lifeCycle_onCreate_shouldNotInitBluetoothPanWhenBluetoothOff

Bug: 79561076
Change-Id: I85208f48ce4dded94020cb156fcdb98b2cc873f9
(cherry picked from commit 31bcf6225cdabee4f810d4fe55ea32d0d43a9c5c)
(cherry picked from commit 31c799305b480e56bd083a48c6acca11572ebe16)
2018-05-16 15:22:56 -07:00
Chilun Huang
f4b094d13a Merge "Add index for Hotspot settings page into search" 2018-05-15 03:59:15 +00:00
Lei Yu
7c580997be Merge "Add cancel button for private dns dialog" into pi-dev am: 7fe599f542
am: ea1d9d17d1

Change-Id: I55cab617105d21ff42ed911e6b457ec662349811
2018-05-14 15:11:36 -07:00
Lei Yu
231fe615cc Add cancel button for private dns dialog
Also update the onclick method.

Change-Id: I69e92584e056a4d0a686153315b8df002d91e204
Fixes: 79479021
Test: RunSettingsRoboTests
2018-05-14 13:12:00 -07: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
Chilun
d3358d8a6f Add index for Hotspot settings page into search
Added index provider into TetherSettings and WifiTetherSettings pages.
Added robotests to check the keys returned by getNonIndexableKeys.
Move repeated code into utility class.

Bug: 74777873
Test: make -j RunSettingsRoboTests
Test: atest UniquePreferenceTest
Change-Id: I6cb09d735afa4867d25a79de733ce8c59634e49b
2018-05-09 14:05:15 +08:00
Chalard Jean
0e8e89f576 Show the status of private DNS. am: f249555f97
am: 43a42e4592

Change-Id: I7ba6ec19ab4f373d6d78609f5a8a6bd76749ead7
2018-05-02 22:13:37 -07:00
Chalard Jean
f249555f97 Show the status of private DNS.
This works as follows :
Off → "Off"
Opportunistic, inactive → "Automatic"
Opportunistic, active → "On"
  (stealing a string from notifications for this)
Strict, not resolved and/or not validated → "Couldn't connect"
Strict, resolved and validated → Set up hostname

Bug: 73641539
Test: manual, and updated tests pass
Change-Id: Id1132467288d51aa9cb81a04db65dee438ddfad9
2018-05-03 05:04:47 +00:00
Fan Zhang
5f492647c8 Merge "Modified the AirplaneModePreferenceController for slice" into pi-dev am: 62cd5f7f0f
am: 169d6a9cd6

Change-Id: Ie5aada5dc0993e097ad5215895bda86cebab2f87
2018-04-26 16:49:32 -07:00
sunnyshao
c624663312 Modified the AirplaneModePreferenceController for slice
- Updated the AirplaneModePreferenceController for slice feature
- Updated the AirplaneModeEnabler for slice feature

Fixes: 78645242
Test: manual
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.network
      make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.core
      make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.dashboard
      atest UniquePreferenceTest SettingsGatewayTest

Change-Id: I4afbc666f916570d648ad2b33ebb25924024e9f1
2018-04-26 14:49:04 -07:00
Jason Monk
0d3322a57b Merge "Push full slice index to device index" into pi-dev am: 3d29ca2893
am: 2332aad2a6

Change-Id: I3563eb7ed2ab93b35b1a950d89ca2466abaa59e3
2018-04-26 14:26:38 -07:00
Jason Monk
fcd5f0f1aa Push full slice index to device index
Test: make RunSettingsRoboTests
Bug: 74555610
Change-Id: I3f0aa1218e1d7e736dc918d83e76423fa81ac6ab
2018-04-26 11:16:04 -04:00