Commit Graph

772 Commits

Author SHA1 Message Date
Alex Salo
65c319a7d5 Merge "Implemented nearby button that displays wifi sharing intent and long press button that opens wifi qr share fragment" 2020-11-16 21:45:34 +00:00
Abel Tesfaye
8881f91349 Implemented nearby button that displays wifi sharing intent and long press button that opens wifi qr share fragment
Test: manual - took a video
Change-Id: I931aabaada09c87b4a7936bcde4fcff8bc237dd0
2020-11-13 22:20:31 +00:00
Weng Su
c95baa2317 Fix the bug of losing Wi-Fi certificate when editing
- When the saved certificate is loaded into the UI, the EAP method
spanner will trigger a redundant item selection event to refresh the
certificate to the default value.

- Filter out redundant item selection event of the EAP method spanner.

Bug: 161569880
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=WifiConfigController2Test
Change-Id: I947fb7668ffa7e9ed8c150fe14e6ae9d7a67393c
2020-11-12 04:05:34 +00:00
Weng Su
3a45d054eb Fix the Wi-Fi detailed settings un-editable issue.
- The WifiEntry info might not be ready in early stage. (ex:
WifiEntry#canSetPrivacy())

- The Wi-Fi detailed setting listens to the WifiEntry callback to
refresh the preferences, it should first update the preference status to
be editable or not, and then display preferences to the UI.

- The privicy preference should be able to set back to selectable when
WifiEntry#canSetPrivicy() change from false to true.

Bug: 170148009
Test:
make RunSettingsRoboTests
ROBOTEST_FILTER=WifiNetworkDetailsFragment2Test
make RunSettingsRoboTests
ROBOTEST_FILTER=WifiPrivacyPreferenceController2Test

Change-Id: I567b2b80163631a01d165c0ac5c0aba392e014ef
2020-10-21 04:30:09 +08:00
TreeHugger Robot
886fe1e6ab Merge "Revert "Modify the privacy controller to be selectable in the next updateState()"" 2020-10-20 03:20:36 +00:00
Weng Su
67f95bfd2f Revert "Modify the privacy controller to be selectable in the next updateState()"
This reverts commit f71149911b.

Reason for revert: Some unexpected code mixed in this CL.

Change-Id: I43574314554a9c62559f529e45f69c29ba6b5a77
2020-10-20 02:12:28 +00:00
Weng Su
2e49b2e639 Merge "Modify the privacy controller to be selectable in the next updateState()" 2020-10-19 09:51:23 +00:00
Weng Su
f71149911b Modify the privacy controller to be selectable in the next updateState()
Listen WifiEntry#onUpdated() to update preference states will be modify
in next CLs.

Bug: 170148009
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiPrivacyPreferenceController2Test
Change-Id: I5acf096970431a0b093dd7e0968f30c1959e3b7f
2020-10-19 14:37:03 +08:00
TreeHugger Robot
5446e7a7c4 Merge "Add randomized MAC (last used)" 2020-10-08 03:42:00 +00:00
xshu
19eabbff63 Add randomized MAC (last used)
Makes it clear that when a network is disconnected, the randomized MAC
address shown is the last used one. (ie. it could change in the next
connection depending on whether enhanced MAC randomization is active)

Bug: 170166681
Test: Manually verified that the new text is shown for disconnected
networks.

Change-Id: I4aec47b2de68c077e6fdc7efa96d39e6666d4c86
2020-10-07 14:20:16 -07:00
Alexander Dorokhine
46e85a2fad Migrate away from deprecated Truth APIs.
This is a transitional step towards truth 1.0.1, where these APIs have
been completely removed.

Bug: 168765701
Test: m checkbuild
Change-Id: I76f9c37cb699ce6ab8715ffe35d11668ccbceea1
2020-09-24 23:09:41 +00:00
Quang Luong
77e32049bd Merge "[Wi-Fi] Show Pie+x Wi-Fi icon when a connected Wi-Fi is not default route" into rvc-qpr-dev am: db667a8971 am: 8704114f02
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12444567

Change-Id: I95ac03dcb6a45fbc8c71aae0d7c9fcae20f36ff2
2020-09-11 23:50:57 +00:00
Arc Wang
20680c254c [Wi-Fi] Show Pie+x Wi-Fi icon when a connected Wi-Fi is not default route
This change shows Pie+x Wi-Fi icon in Wi-Fi Details for a connected Wi-Fi
network which is not the default network when

  1. It's connection speed quality is bad.
  or
  2. It has certain internet connection problem.

Bug: 163627176
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiDetailPreferenceController2Test
      manual visual
Change-Id: I1f102471426a55c7dabd9110afba20f802abedbe
2020-08-28 11:43:55 +08:00
Jason Chiu
4113bf12d0 [DO NOT MERGE] Update contextual cards display mechanism am: b824187524
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12343226

Change-Id: Iaf3bcd4f531d7a82aa78c5eba12b44192e3b7df8
2020-08-15 02:08:43 +00:00
Jason Chiu
b824187524 [DO NOT MERGE] Update contextual cards display mechanism
1. Make Wi-Fi card default to collapse.
2. Support showing a default card when there's no displayable card.
3. Solve the problem of icon not showing for cached slices in card
renderer

Bug: 163288869
Fixes: 159092915
Test: manual, robotest
Change-Id: Ie8b61ad58410337334e29b7a794353b0c6a6ba8c
2020-08-13 17:58:55 +08:00
Arc Wang
ae79c41cd7 [Wi-Fi] Fix crash after editing invalid hotspot password
From Android 11, Wi-Fi framework only supports ASCII encoding
for hotspot password, APP should check if password character is
valid.

This change checks if SoftApConfiguration accepts the password
and disable the OK button if the password is invalid.

Bug: 163353576
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiUtilsTest
Change-Id: Ief3c6c1f08f8fcdf128768cde3ab8eef91f19fbe
2020-08-12 14:34:02 +08:00
Arc Wang
b432cf293c [Wi-Fi] Fix crash after editing invalid hotspot password
From Android 11, Wi-Fi framework only supports ASCII encoding
for hotspot password, APP should check if password character is
valid.

This change checks if SoftApConfiguration accepts the password
and disable the OK button if the password is invalid.

Bug: 163353576
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiUtilsTest
Change-Id: Icf3b5c85856906e4cbe2f0ad79583c1b7182b8c7
Merged-In: Ief3c6c1f08f8fcdf128768cde3ab8eef91f19fbe
2020-08-12 14:29:30 +08:00
TreeHugger Robot
2acae9df4a Merge "[Wi-Fi] Support multi-SIM for SIM dependent EAP methods" into rvc-qpr-dev am: edd587c2a6 am: 48d768b00c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12167384

Change-Id: I559cee4b76432f72cab16b926ad7d8a2f87abedc
2020-08-07 12:04:56 +00:00
TreeHugger Robot
edd587c2a6 Merge "[Wi-Fi] Support multi-SIM for SIM dependent EAP methods" into rvc-qpr-dev 2020-08-07 11:37:27 +00:00
Arc Wang
8734b131fb Merge "[Wi-Fi] Check if domain field is not empty when users choose a ca certificate" 2020-07-31 02:22:02 +00:00
Arc Wang
94b8579607 [Wi-Fi] Check if domain field is not empty when users choose a ca certificate
Domain is required for client to validate server's certificate.
This change disable Save button for a new Wi-Fi network of a
specified CA certificate but empty domain.

Bug: 161378819
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigController2Test
      manual
      1. Install a certificate.
      2. Add a new Wi-Fi network of EAP method PEAP
      3. Set CA certificate to the certificate installed at 1.
      4. Save button should be disabled.
      5. Input something in domain field.
      6. Save button should be enabled.
Change-Id: I65c8b29ec7a03b21403ddbfc087ce48c2a4a69e4
2020-07-31 10:06:48 +08:00
Arc Wang
b42d09f885 Merge "[Wi-Fi] Support multi-SIM for SIM dependent EAP methods" 2020-07-31 00:58:01 +00:00
Arc Wang
8d5c8c2611 [Wi-Fi] Check if domain field is not empty when users choose a ca certificate
Domain is required for client to validate server's certificate.
This change disable Save button for a new Wi-Fi network of a
specified CA certificate but empty domain.

Bug: 161378819
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigController2Test
      manual
      1. Install a certificate.
      2. Add a new Wi-Fi network of EAP method PEAP
      3. Set CA certificate to the certificate installed at 1.
      4. Save button should be disabled.
      5. Input something in domain field.
      6. Save button should be enabled.
Change-Id: I65c8b29ec7a03b21403ddbfc087ce48c2a4a69e4
2020-07-29 15:13:28 +08:00
Arc Wang
c5c92eb342 [Wi-Fi] Remove the files which use SettingsLib Wi-Fi objects
This change removes

WifiDetailPreferenceController
WifiPrivacyPreferenceController

Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigControllerTest
      Manualy add a Wi-Fi network of randomized MAC and a Wi-Fi network of device MAC
      in SetupWizard, then observe the MAC value in Settings Wi-Fi detail.
Change-Id: I82ef4e1d2c386d8bd751df8ff18c18163a0e9a6a
2020-07-28 17:36:41 +08:00
Arc Wang
2df3a3e7df [Wi-Fi] Support multi-SIM for SIM dependent EAP methods
Before this change, users are not able to choose SIM
card for SIM dependent EAP methods when a device supports
multi-SIM.

This change support to choose a SIM when adding an EAP
Wi-Fi network. And this change support to show the related
SIM information on Wi-Fi detail screen.

Bug: 142792009
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigController2Test
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details2.WifiDetailPreferenceController2Test
      Manually add an EAP Wi-Fi network of EAP-SIM type, observe the
      value in Wi-Fi detail screen.
Change-Id: I2910931166dc6541897663857c46abcc1b3115fa
2020-07-28 10:02:16 +08:00
Arc Wang
e410325b37 [Wi-Fi] Support multi-SIM for SIM dependent EAP methods
Before this change, users are not able to choose SIM
card for SIM dependent EAP methods when a device supports
multi-SIM.

This change support to choose a SIM when adding an EAP
Wi-Fi network. And this change support to show the related
SIM information on Wi-Fi detail screen.

Bug: 142792009
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigController2Test
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details2.WifiDetailPreferenceController2Test
      Manually add an EAP Wi-Fi network of EAP-SIM type, observe the
      value in Wi-Fi detail screen.
Change-Id: I2910931166dc6541897663857c46abcc1b3115fa
2020-07-28 09:50:58 +08:00
Arc Wang
4f9960231b Merge "[Wi-Fi] Remove WifiTrackerLib/AccessPoint constant & API usage" 2020-07-24 03:21:35 +00:00
TreeHugger Robot
bc7c42621b Merge "[Wi-Fi] Remove the files which use SettingsLib Wi-Fi objects" 2020-07-23 08:01:19 +00:00
Arc Wang
6934c0225b Merge "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice" 2020-07-23 01:38:08 +00:00
Arc Wang
551dcf08e4 Merge "[Wi-Fi] Support WifiTrackerLib in WifiDialogActivity" 2020-07-23 01:37:47 +00:00
Goven Liu
ac26cd541c Merge "[Wi-Fi] WiFi Settings inclusive language fix plan phase 1" 2020-07-22 11:06:29 +00:00
Arc Wang
166ece8f1d [Wi-Fi] Remove WifiTrackerLib/AccessPoint constant & API usage
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.dpp
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details
Change-Id: I857cf0e261c1b07c3d7b6bc08632880ed8c71ee1
2020-07-22 07:53:52 +00:00
Arc Wang
fef7216ef9 [Wi-Fi] Remove the files which use SettingsLib Wi-Fi objects
This change removes

AddDevicePreferenceController
WifiDetailPreferenceController
WifiMeteredPreferenceController
WifiNetworkDetailsFragment
WifiPrivacyPreferenceController

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Id4901d632f7f4634461ebbbc096e36d348a33365
2020-07-22 07:53:33 +00:00
Arc Wang
0496d2c142 [Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice
This change uses WifiTrackerLib's WifiPickerTracker & WifiEntry
to replace SettingLib's WifiTracker & AccessPoint.

This change includes

1. WifiScanWorker has the callbacks similar to a lifecycle component
   but it's not a lifecycle component. Let WifiScanWorker implements
   LifecycleOwner and provides #getLifecycle() for WifiPickerTracker.

2. Remove captive portal related code because WifiEntry#connect will
   handle captive portal login if it's necessary.

3. Create WifiSliceItem to wrap WifiEntry because WifiEntry is an
   abstract object and it does not provide copy constructor.
   Without copy construcor, Wi-Fi Slice may show unexpected information
   when a WifiEntry is updated.

Bug: 155613549
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.slice
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I2d66ea4905daca3244ec4cf8f2935cda817480b1
2020-07-22 07:53:18 +00:00
Arc Wang
e57ead9a75 [Wi-Fi] Support WifiTrackerLib in WifiDialogActivity
After this change, WifiDialogactivity supports both WifiTrackerLib and
SettingsLib because this is an exported UI component, some other APPs
(e.g., SetupWizard) still use SettingsLib.

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi.WifiDialogActivityTest
      manual
      In Wi-Fi Settings, manually add a Wi-Fi network.
      In SetupWizard, manually add a Wi-Fi network.
Change-Id: I87f477d905cc6ea34ef1afbfade3773920dad6eb
2020-07-22 15:50:42 +08:00
govenliu
fec71036f7 [Wi-Fi] WiFi Settings inclusive language fix plan phase 2
Replace WiFi related terms which contain Blacklist,Dummy,Sane or Sanity Check wordings.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.

Bug: 161425297
Test: make RunSettingsRoboTests -j
Change-Id: I1ff89bd2a6636ada1e0f5b9879aecbbd5dab4012
2020-07-22 12:41:01 +08:00
govenliu
b70ddb9df7 [Wi-Fi] WiFi Settings inclusive language fix plan phase 1
Replace WiFi related terms which contain Master wording.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.

Bug: 161425297
Test: make RunSettingsRoboTests -j or
make RunSettingsRoboTests ROBOTEST_FILTER=DashboardFragmentTest
make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AutomaticStorageManagementSwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AllInOneTetherPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=TopLevelNetworkEntryPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=PrimarySwitchPreferenceTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiPrimarySwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest

Change-Id: I9395c50e092e124016609f88f7c8151554a0d874
2020-07-21 20:56:22 +08:00
TreeHugger Robot
2432658d23 Merge "Revert "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice"" 2020-07-16 15:31:50 +00:00
Greg Kaiser
9e9255fb2a Revert "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice"
This reverts commit 7b1aded2a6.

Reason for revert: Settings is crashing for WiFi selection in SetupWizard on wembley

Bug: 161434533
Change-Id: I1d90e9bae1b31862fba674db0d7497e43f987a7f
Test: Locally reverted, reflashed, and was able to select WiFi without Settings crashing.
Exempt-From-Owner-Approval: Revert to clear up P0 while all owners are outside of work hours
2020-07-16 14:47:31 +00:00
Arc Wang
02d279a453 Merge "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice" 2020-07-16 09:32:42 +00:00
Arc Wang
7b1aded2a6 [Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice
This change uses WifiTrackerLib's WifiPickerTracker & WifiEntry
to replace SettingLib's WifiTracker & AccessPoint.

This change includes

1. WifiScanWorker has the callbacks similar to a lifecycle component
   but it's not a lifecycle component. Let WifiScanWorker implements
   LifecycleOwner and provides #getLifecycle() for WifiPickerTracker.

2. Remove captive portal related code because WifiEntry#connect will
   handle captive portal login if it's necessary.

3. Create WifiSliceItem to wrap WifiEntry because WifiEntry is an
   abstract object and it does not provide copy constructor.
   Without copy construcor, Wi-Fi Slice may show unexpected information
   when a WifiEntry is updated.

4. Use WifiTrackerLib's NetworkDetailsTracker & WifiEntry in
   WifiDialogActivity because it gets a WifiEntry key from Wi-Fi Slice.
   NetworkDetailsTracker can get the WifiEntry of th key.

Bug: 155613549
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.slice
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I0718f4647cea007a9b701922f3121a388dd43918
2020-07-16 15:56:42 +08:00
Bonian Chen
a5f08854e3 [Settings] Inclusive language for Data Usage
Change wordings in data usage part into inclusive language.

Bug: 160707804
Test: make RunSettingsRoboTests
Change-Id: I713e52df8201413b884257a51bc1f71a0d43179d
2020-07-15 02:52:32 +00:00
govenliu
d9644462fa [Wi-Fi] Fix AddAppNetworksFragmentTest one unit test failed case
onDestroy_quitWorkerThread in AddAppNetworksFragmentTest failed due to java.lang.IllegalStateException: no event down from INITIALIZED
Solution: Initialize fragment before calling the onDestroy API.

Bug: 151696220
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AddAppNetworksFragmentTest
Change-Id: I80d28c6e7490a36a7ff26313d30d33b2f7d727c1
2020-06-25 19:37:12 +08:00
Arc Wang
fb2b144413 Merge "[Wi-Fi] Apply WifiTrackerLib objects in NetworkRequestDialogFragment" 2020-06-21 14:25:18 +00:00
Arc Wang
97659b2dfc [Wi-Fi] Apply WifiTrackerLib objects in NetworkRequestDialogFragment
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Ie6f63cb8aa81d61bfa41687c73f8c8764cb3cefe
2020-06-19 19:15:42 +08:00
Jason Chiu
3e7ae1b547 Merge "Fix the overlapping problem of the burst of slice updates" into rvc-dev am: 251b98492f am: e623f69f29 am: a4e005e0ef am: cab15b0d65
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11837792

Change-Id: I183c512bfec686df0e9c3de50fc7252ccff66663
2020-06-18 12:03:52 +00:00
Jason Chiu
0625bb4815 Fix the overlapping problem of the burst of slice updates
Implement a throttle in SliceBackgroundWorker to control slice updates.

Test: robotest
Fixes: 152366832
Change-Id: I8b65d1b57973e036b932172627aca506f4fae3a4
2020-06-18 02:18:38 +08:00
Mark Chien
75b2a75ccd Merge "Remove schedule recheck logic from TetherService" into rvc-dev am: 49b74e24d6 am: 10ef08d80f am: 78b4bc6020 am: 1912ee3e9a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11524846

Change-Id: I78a0a2d461fd96f2af1850c74d78cd34060e66cc
2020-06-15 07:20:22 +00:00
Mark Chien
49b74e24d6 Merge "Remove schedule recheck logic from TetherService" into rvc-dev 2020-06-15 06:23:11 +00:00
Roshan Pius
924e9e39c1 NetworkRequestDialog: Exit the dialog on connect failure
Connection failure (similar to connection success) is the end of the
processng of a request. We should dismiss the dialog on connection
failure.

Bug: 158844146
Bug: 158616070
Test: Manual tests - Simulate connection failure and ensure that the
dialog vanishes with a toast.

Change-Id: I625ca76298ed549dbed76d398aea0c957c9102fc
Merged-In: I625ca76298ed549dbed76d398aea0c957c9102fc
2020-06-14 15:19:30 +00:00