Commit Graph

274 Commits

Author SHA1 Message Date
jackqdyulei
e95f07dff6 Still check the visibility of view
Since EAP has many sub type, which controls differnet view. We still need to check the
visibility to determine which type it is.

Bug: 116767176
Test: RunSettingsRoboTests
Change-Id: Iee04a50140ae1afacdf77eedf7743a465bae1f58
2018-09-27 16:37:48 -07:00
jackqdyulei
0c6f8065c2 Fix bug in Add network fragment
After we switch secutiry from EAP to WPA, add button will become
disabled forever. Main reason is that we use view visibility to decide
which security type it is. In this case target view is visible while its
parent view is gone. So even though UI shows correctly however we still
think it is in EAP mode.

This CL check the mAccessPointSecurity directly instead of depending on
fragile view.

Fixes: 114689178
Test: RunSettingsRoboTests

Change-Id: I4284d25e6bf86ee7c5e7c0e17f0834c719d8d587
2018-09-14 11:10:31 -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
TreeHugger Robot
c748fee5d8 Merge "Refactor add network page" 2018-08-21 00:21:07 +00: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
TreeHugger Robot
3df19f92b0 Merge "Fix indexing after slices api changes" 2018-08-17 19:15:23 +00:00
tmfang
db00a3177a Refactor add network page
WifiDialog.java can be launched as "full screen mode"
in some use cases. However the way it's done is that
it uses theme to fake the full screen appearance.
It just feels hacky to use a dialog for full screen UI.
So, we created an "AddNetworkFragment" to make this
page can look like a normal fragment.

Also, clean up some useless code about "full screen mode"
of WifiDialog.

Change-Id: Iedd04c6a8e403cbceb872313314e1cba0d514246
Fixes: 111875856
Test: robo test, manual test
2018-08-18 00:16:14 +08:00
Mady Mellor
ef724a9f87 Fix indexing after slices api changes
Test: make -j40 RunSettingsGoogleRoboTests
      make -j40 RunSettingsRoboTests ROBOTEST_FILTER="Slice"
Change-Id: Ib599a8c814942a80d7b60fc3b40b284ce2b55775
2018-08-15 22:30:56 +00:00
jackqdyulei
f5aa59e99e Implement createPrefControllers for tether page
So tether preferences could show up in search

Change-Id: I234680aff878451df2a634cb58538bb2627d2eff
Fixes: 112599941
Test: Robotests
2018-08-15 13:15:04 -07:00
tmfang
9d4a806f28 Settings crashes on opening Wi-Fi Add network
Since Theme_Settings_NoActionBar extends from Theme.DeviceDefault.Settings,
so it carshed when AppCompatDelegateImpl tried to get AppCompat theme from WifiDialog.

Test: visual inspection, robo
Change-Id: I751b771fdfa9ad2261baa5a06274f6bb0a70d677
Fixes: 111804691
2018-07-27 13:49:29 +08:00
tmfang
5bd7151413 Migrate all AlertDialogs to AndroidX version
- Let test cases can be compatible with AndroidX AlertDialog.
- Theme of Transparent needs to support AndroidX AlertDialog.

Change-Id: I0789b66f52feef30ebab7fb824d0e39d5ae9cc96
Fixes: 111413092
Test: make RunSettingsRoboTests -j56
2018-07-20 13:38:58 +08:00
Fan Zhang
2ff710a911 Move logic from SavedAccessPoint fragment to controller
Change-Id: Ic54e536f97490cec1746fa58c42ec55b60d17f0e
Fixes: 64806699
Test: robotests
2018-07-19 14:49:14 -07:00
Raff Tsai
0f4affb9a0 Merge "Fix AlertDialog corner and color accent" 2018-07-19 01:00:28 +00:00
Fan Zhang
d5547c68bf Convert SavedAccessPoints to DashboardFragment (step 1)
Change-Id: I5d8fa8497e04c9314dead9af7534df4507ffd591
Bug: 64806699
Test: robotest
2018-07-18 16:21:24 -07:00
Fan Zhang
661049f4d9 Clean up saved network screen
Bug: 64806699
Test: rebuild
Change-Id: I4392809f08034c7c13575db2f5c41468fcea0987
2018-07-18 15:13:21 -07:00
Raff Tsai
0810afee9b Fix AlertDialog corner and color accent
- Add some attributes in Theme.AlertDialog

Change-Id: Ifb9ca98ee11f6c82cda4a576d10b5fde54f788be
Fixes: 110917586
Test: mannual
2018-07-18 15:40:51 +08: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
Salvador Martinez
3ba12d0086 Merge "Fix incorrect method call to wifiManager in Tether" into pi-dev am: 4804c2c7a5
am: 94bebd2f80

Change-Id: Ia5274cd69ce2d6208cf9490b7a41ec080090cb6f
2018-07-10 12:46:09 -07:00
Salvador Martinez
78c3f368c3 Fix incorrect method call to wifiManager in Tether
In the WifiTetherApBandController the incorrect method was
being called to check if the device is 5Ghz compatible. We
were calling is5GhzBandSupported directly, but we were
supposed to call isDualBandSupported instead.

Test: robotests updated
Bug: 110793581
Change-Id: I61d3ff10abedde6196b8e29591ebfd3272dbbcd9
2018-07-09 11:52:34 -07:00
Matthew Fritze
56b2bad05e Handle special case slices
Create a handler for any slice that doesn't include anything
from a PreferenceController.

Test: robotests
Change-Id: If23947152d61877537d0cac6240e96b9ab977bce
Bug: 80263568
2018-07-09 11:21:25 -07:00
Jong Wook Kim
d2ba8871b9 Display "Unavailable" when received default MAC
Display "Unavailable" instead of "02:00:00:00:00:00" when the current
MAC address is "02:00:00:00:00:00" which indicates that we couldn't get
the actual device MAC address.

Bug: 110043449
Test: unittest (make RunSettingsRoboTests
ROBOTEST_FILTER=WifiInfoPreferenceControllerTest)
Change-Id: Iac9f81d144fd4c93ac12adaa80e1a55b19a6e186
2018-06-21 16:24:37 +00:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Salvador Martinez
acff57fa68 Change UI for wireless AP tether band selection
We decided to use the list preference after all due to
some devices not supporting various combinations of AP
configurations. This change makes it so that there are
three different UIs depending on the configurations
which are supported.
- 5.0 GHz unsupported: disable the preference and just
set the value to 2.4 GHz
- all supported, no dual mode: allow the user to choose
EITHER 2.4 GHz or 5.0 GHz
- all supported, dual mode: allow the user to choose
2.4 GHz or BOTH 2.4 GHz & 5.0 GHz with 5.0 being
preferred

Test: atest SettingsRoboTests
Bug: 80315296
Change-Id: I888d35811a98b8cf0155a3cb96c42ff762763378
Merged-In: I888d35811a98b8cf0155a3cb96c42ff762763378
2018-06-12 22:59:28 +00:00
Fan Zhang
b6584d0a5a Check wifi password length by byte, not char.
Change-Id: Ie6dc441780660c52ff01a2bced79a4e95200d731
Fixes: 79209073
Test: robotest
2018-06-08 13:18:07 -07:00
Salvador Martinez
e83388164c Change UI for wireless AP tether band selection
We decided to use the list preference after all due to
some devices not supporting various combinations of AP
configurations. This change makes it so that there are
three different UIs depending on the configurations
which are supported.
- 5.0 GHz unsupported: disable the preference and just
set the value to 2.4 GHz
- all supported, no dual mode: allow the user to choose
EITHER 2.4 GHz or 5.0 GHz
- all supported, dual mode: allow the user to choose
2.4 GHz or BOTH 2.4 GHz & 5.0 GHz with 5.0 being
preferred

Test: atest SettingsRoboTests
Bug: 80315296
Change-Id: I888d35811a98b8cf0155a3cb96c42ff762763378
2018-06-06 13:09:41 -07:00
Naina Nalluri
6b1869351a Add Wifi calling Preference slice and other cleanup
WifiCallingPreference Slice Provider:
  1. If Wifi calling is not enabled - display message to user
     to enable Wifi calling
  2. Else if Wifi preference is not editable - return a null
     Slice
  3. Else provide a slice with rows - first row giving current pref
     information, followed by preference items (in each row).
     wifi_only is displayed only when it is allowed to display it.
     Each row with preference item has specific intent action.
WifiCallingPreference Slice BroadcastReceiver:
   1. If only Wifi calling is enabled & Wifi preference is editable &
      there is a change in current value modify wifi pref setting
   2. And Ask to re-query the slice in one second to display
      updated settings if 1 is valid or display appropriate message.
Clean-up:
   1. Return null instead of non-actionable slices.
   2. Use getText to get string resources.
   3. Remove unnecessary extra variables.

Bug: 79548264
Test: Use support-slices-demos-debug.apk to test on device
Change-Id: I186f19be2007c2331eaf6195e70b4a9c635adf9e
2018-06-01 11:02:59 -07:00
Daichi Ueura
cbd04dcade Merge "Hide entire hidden field for non-hidden networks" into pi-dev am: 2c793dfeff
am: 1a2153e6ab

Change-Id: Id5dc0b1855520c9071ce3b8c2897f2b69d3b3791
2018-05-23 16:05:02 -07:00
TreeHugger Robot
2c793dfeff Merge "Hide entire hidden field for non-hidden networks" into pi-dev 2018-05-23 18:15:04 +00:00
TreeHugger Robot
c7b90ee998 Merge "Return null when setting can't be changed." into pi-dev 2018-05-23 17:08:29 +00:00
Daichi Ueura
9555afb64e Hide entire hidden field for non-hidden networks
This CL hides not just hidden network spinner but entire
hidden field when a user is adding a network from scanned
network list.

Test: robotests
Bug: 80114851
Change-Id: I8b29fd764d62af1e46beaa7d26fae97848f4efe6
2018-05-23 09:18:07 -07:00
TreeHugger Robot
2626288bfa Merge "Return null when setting can't be changed." 2018-05-23 16:01:22 +00:00
Matthew Fritze
e31e60ce94 Add Location Slice
Location is an intent-only Slice.

Test: Robotests
Change-Id: Ie9ed05be2224f2c4b393ed201d5f313f80183edc
Merged-In: I07e27683b46fe4ded8215009a983bb909555fb59
Fixes: 67997314
2018-05-23 08:09:07 -07:00
Matthew Fritze
f1a7006d31 Add Location Slice
Location is an intent-only Slice.

Test: Robotests
Bug: 67997314
Change-Id: I07e27683b46fe4ded8215009a983bb909555fb59
2018-05-22 21:13:47 -07:00
Matthew Fritze
d9613b2742 Return null when setting can't be changed.
If a Slice cannot be changed, return null instead of
an error slice.

Bug: 80155832
Test: robotests
Change-Id: I843fee76cf19d49cc994062059cb231f222120b2
Merged-In: Ib94136c449c6d9c1911f89833bba62fd2263daa4
2018-05-22 20:18:09 -07:00
Matthew Fritze
417693021e Return null when setting can't be changed.
If a Slice cannot be changed, return null instead of
an error slice.

Bug: 80155832
Test: robotestst
Change-Id: Ib94136c449c6d9c1911f89833bba62fd2263daa4
2018-05-22 20:17:10 -07:00
Matthew Fritze
25fc14c607 Add Bluetooth Slice
Bluetooth slice is added a special case, due to the migration of
bluetooth to a Switch Bar instead of a preference with a controller.

Change-Id: I8b70bb66c862255a4e8d2426ac09939ba6197624
Merged-In: Icfdcd77601ad1e64e0f6c352a8d691f0181515c8
Fixes: 67997327
Test: robotests
2018-05-22 06:59:49 -07:00
Matthew Fritze
d2bb2ab259 Add Bluetooth Slice
Bluetooth slice is added a special case, due to the migration of
bluetooth to a Switch Bar instead of a preference with a controller.

Bug: 67997327
Test: robotests
Change-Id: Icfdcd77601ad1e64e0f6c352a8d691f0181515c8
2018-05-21 20:03:24 -07:00
TreeHugger Robot
0e721c598e Merge "Make user explicitly set security type for tether network" into pi-dev 2018-05-19 03:17:17 +00:00
Salvador Martinez
d9bae5a15e Make user explicitly set security type for tether network
This was made implicit which is confusing for the user so this CL
adds a preference to make the user manually choose their security
type.

Test: robotests
Fixes: 79435112
Change-Id: Ie78806e8952b52e1b7cd21f0b87c9d064acaff64
Merged-In: Ie78806e8952b52e1b7cd21f0b87c9d064acaff64
2018-05-19 02:14:18 +00:00
Salvador Martinez
f3d532f43d Make user explicitly set security type for tether network
This was made implicit which is confusing for the user so this CL
adds a preference to make the user manually choose their security
type.

Test: robotests
Bug: 79435112
Change-Id: Ie78806e8952b52e1b7cd21f0b87c9d064acaff64
2018-05-18 15:21:07 -07:00
TreeHugger Robot
6dc6462a54 Merge "Add DnD as a special case Slice" into pi-dev 2018-05-18 14:41:45 +00:00
TreeHugger Robot
45c29f15b9 Merge "Add DnD as a special case Slice" 2018-05-18 04:06:29 +00:00
Lei Yu
c81da687a0 Merge "Fix tethering summary when airplane mode is off" into pi-dev am: a07b1f83a8
am: 8ed6b5dabf

Change-Id: I27bd8d85f0c22207336f8bf632280a5bfd243658
2018-05-17 19:21:49 -07:00
Matthew Fritze
e8b62714af Add DnD as a special case Slice
Add DND Slice as a special case, since there is an existing
inheritance structures in the zen mode preference controllers which
would be too risky to change at this point in the release.

Change-Id: If4b7013be35c89695786af2dbbea2edcf7a189f3
Merged-In: Ice608b9a7bd6f38b73e581eb3723f0a2fae96f2b
Test: make RunSettingsRoboTests
Fixes: 67997377
2018-05-17 18:20:36 -07:00
Matthew Fritze
4710917aa4 Add DnD as a special case Slice
Add DND Slice as a special case, since there is an existing
inheritance structures in the zen mode preference controllers which
would be too risky to change at this point in the release.

Test: make RunSettingsRoboTests
Bug: 67997377
Change-Id: Ice608b9a7bd6f38b73e581eb3723f0a2fae96f2b
2018-05-17 18:20:07 -07:00
TreeHugger Robot
a07b1f83a8 Merge "Fix tethering summary when airplane mode is off" into pi-dev 2018-05-18 00:49:50 +00:00
Lei Yu
4fec12cbbf Fix tethering summary when airplane mode is off
When airplane mode is off, fall back to default summary
(tether off summary). It should be fine because once tether
state get updated again, it will go through original listener
to update the summary.

Change-Id: Iba9b56f452e72365ea964d841ee156a2625c0ae1
Fixes: 79721162
Test: RunSettingsRoboTests
2018-05-17 14:38:22 -07:00
Matthew Fritze
6feddd6954 Add Wifi Slice
Add a custom Wifi Slice to the Settings Slice Provider.
It needs a custom Slice because of the complicated listener logic
in the MasterSwitchPreferenceController, which makes it hard to
work-in synchronous set/get logic.

The one-off Slice requires extra changes, including:
- Including it in getDescendants
- Handling changes to wifi by the framework

This is the first change that uses SettingsLib's broadcast relay,
which allows settings to (un)register IntentFilters to a Uri,
allowing Settings Slices affected by the framework (quicksettings,
connectivity related, volume, etc) to be updated without action
on the Slice.

Bug: 70622039
Bug: 67997332
Test: robotests
Change-Id: Ibfe4736beecb833e3f6bb871b2eb5228a5fd3a34
2018-05-17 10:16:55 -07:00