When tapping on the advanced button during configuring a network, some items in the expanded list are covered by IME keyboard, which may cause user to ignore them accidently.
To improve it, hide the IME temporary to let user can see most of them.
Bug: 78441374
Test: Use ShadowInputMethodManager to check if the keyboard is hide or not after tapping on the advance button.
Change-Id: I0677d96febc90c66d1cf6f98555bbb436a654660
We should set the same theme which applied in Settings APP to the NetworkRequestDialog
Bug: 139294487
Test: check if the right theme is applied when launching this activity.
Change-Id: Iefdfd5b810f5cf22c220830e1ee965113a439a3e
WifiTracker#getAccessPoints() only contains a hidden SSID Wi-Fi
network if it's a saved Wi-Fi network. We can't check if a hidden
SSID Wi-Fi network is reachable inadvance. That is the difference
after a user scanned a QR code of hidden SSID Wi-Fi network.
Bug: 135892509
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiDppUtilsTest
manual test:
Click the Share button of a connected hidden SSID Wi-Fi network
and save the QR code image. Use Wi-Fi QR code scanner in Wi-Fi
Settings to scan the saved QR code image.
Change-Id: I9056622e6dadb04e5642ae1c50fb4d227a78d26d
'Switch to mobile data automatically' setting
To align with framework design.
Bug: 138956509
Test: CellularFallbackPreferenceControllerTest
manual test:
1. Insert feature supported SIM and check UI.
2. Remove feature supported SIM and check UI.
3. Turn airplane mode on and check 1. and 2..
Change-Id: If10616c9b47fae490521479c5abc99c5df87f409
When the security type of hotspot changed, the hidden item will showed because of the Expanded child list is set as constant.
To improve it, dynamicall adjust the Expanded child count according to the security type.
Bug: 138594907
Test: Manually
1. Enter Settings APP -> Network & internet -> Hotspot & tethering
->Wi-Fi hotspot
2. Check if there are only two expanded items if the
Security type is None, or three expaned items if the Security type
is WPA2-personal
3. Change the Security type and back to check item 2 match or not.
Change-Id: I84d1c5dca94d6a218cfc7ecd57e201e1cffdd878
Context#getResources loading is done based on the last SIM to
come up, we may get wrong customization settings.
This fix check all active subscriptions and shows the preference
when there is one SIM applies.
Bug: 138956509
Test: CellularFallbackPreferenceControllerTest
manual test:
1. Insert feature supported SIM and check UI.
2. Remove feature supported SIM and check UI.
3. Turn airplane mode on and check 1. and 2..
Change-Id: I72b6db415429181395a02f163889bb1b9c0f070f
When configuring a new access point in Wi-Fi settings page, it's hard to figure out there are some other option items after you tapping the "Advanced options" button.
To improve it, use full screen fragment to present the configuration items, so user can see as many items as possible.
Bug: 31052996
Test: Mock this fragment and check each button status run as expected.
Change-Id: I1c8e552fcabb1414bb500d918ed61287bf4aece2
Copied main logic from WifiSettings into WifiSettings2, removing
all instances of WifiTracker in preparation of adding WifiTracker2.
Removed:
- WifiDialog (to be added back in)
- Context Menu (to be added back in)
- Leftover SUW code (Next button)
WifiSettings2Test also copied directly from WifiSettingsTest, without
context menu test.
Bug: 70983952
Test: atest WifiSettings2Test
Change-Id: Ie1ef5bf0ca14f5989f4add2165422609f12c2c84
1. Only support EAP-TLS for WPA3-Enterprise 192-bit
2. Remove "Do not validate" from the CA certificate menu
3. Remove "Do not provide" from user certificate menu
To reduce review effort, I left refine code change in another CL.
Bug: 135127581
Test: WifiConfigControllerTest
Change-Id: Ibf904da9407ec803afb8bb995e9df1a2e25f0dcb
For saved networks that do not have a MAC address available in their
WifiConfiguration such as Passpoint networks, the MAC address will
be the default value of 20:00:00:00:00:00. In this case, display
"Not Available" as the summary of the MAC address preference.
Bug: 137282522
Test: atest WifiDetailPreferenceControllerTest &&
manual - open saved passpoint network details while disconnected
but in range and observe MAC address preference.
Change-Id: Ie9010b0430726de8105852ae2afe10047dcc3676
Implement new flow for Single SSID mode of NetworkRequestDialog.
There is a new design for single SSID mode of NetworkRequestDialog.
Bug: b/132904234
Test: make RunSettingsRoboTests -j32 ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Ice19842243ea6f24a3ea74cf6e90a473080b8983
Spinner did not use ttsspan to store the display string so AKA' just
pronounced as AKA.
To fix it, use charsequence array, which each specific array item have
the ttsSpan to store the string for TTS engine.
Bug: 119929832
Test: Set a 3-texts array and check if the specific array item
replacement mechanism work correctly or not.
Change-Id: I8e7d10da99a3f3503e1019687c45cf40070d0045
On the SIM details page, the preference leading to a page for
configuring wifi calling will appear based on the results of the
MobileNetworkUtils#isWifiCallingEnabled helper function. That helper
uses the ImsManager to check several conditions, among them both
isWfcEnabledByPlatform and isWfcProvisionedOnDevice.
The page for configuring wifi calling has a tabbed UX, with one tab for
each active subscription that supports it. The WifiCallingSettings class
gets a list of the active subscriptions to determine which tabs to show,
and removes any that don't support wifi calling, but was only using the
isWfcEnabledByPlatform test to do so. This is a problem because the code
for showing the contents inside the tab, in WifiCallingSettingsForSub,
includes a sanity check of isWfcProvisionedOnDevice and calls finish()
if that returns false.
What this meant in practice is that if you happened to have 2
subscriptions where one returns true for both isWfcEnabledByPlatform and
isWfcProvisionedOnDevice, but the other only returned true for
isWfcEnabledByPlatform, then you'd never be able to succesfully use the
wifi calling page at all because the tab for the subscription you
*aren't* trying to configure would always call finish() early.
The right long term solution to this problem is probably to remove the
tabbed UX entirely from this page, since we probably don't need it given
the overall new multi-SIM UX. But there may still be legacy uses and
that is likely a bigger change than we want to make right now.
As a stopgap, this CL just adds a check of isWfcProvisionedOnDevice to
the code for filtering out ineligible subscriptions from the tabbed
interface, which we should have always had anyway.
Fixes: 135591718
Test: make RunSettingsRoboTests
Change-Id: I656c3d3fb30cb6fabcb86685eae38c5f0cd0c6f2
Fragment.oncreate() causes an IllegalStateException. We use a
ShadowFragment to stop the calling sequence.
Fixes: 135086559
Test: robotest
Change-Id: I601e0f2513f826b0b7749cb2c013b7e4c0a94a33
* changes:
Refactor NotifyOpenNetworksPreferenceControllerTest into TogglePreferenceController
Refactor UseOpenWifiPreferenceController into TogglePreferenceController
Refactor WifiWakeupPreferenceController into TogglePreferenceController
NotifyOpenNetworksPreferenceControllerTest is essentially reimplementing TogglePreferenceController.
Add below 2 changes for test failure of CodeInspectionTest
1. Remove some arguments from constructor of the controller
2. Declare the controller in xml instead of in code
Bug: 132391311
Test: manual
NotifyOpenNetworksPreferenceControllerTestTest
Change-Id: Icda870ef0b90aacbacfe588b23d1b28d2b60941c
UseOpenWifiPreferenceController is essentially reimplementing TogglePreferenceController.
Add below 2 changes for test failure of CodeInspectionTest
1. Remove some arguments from constructor of the controller
2. Declare the controller in xml instead of in code
Bug: 132391311
Test: manual
UseOpenWifiPreferenceControllerTest
Change-Id: Ie52e79fd0bc66a227bd46f09c74d1fbec614f636
WifiWakeupPreferenceController is essentially reimplementing TogglePreferenceController.
Add below 2 changes for test failure of CodeInspectionTest
1. Remove some arguments from constructor of the controller
2. Declare the controller in xml instead of in code
Bug: 132391311
Test: manual
WifiWakeupPreferenceControllerTest
Change-Id: I4aa607f78d5e7de70600a410dfc7267e6bd7d387
ZXing generate QR code with default encoding ISO-8859-1,
the generated QR code is wrong encoded if there is a
character outside of the charset.
Generate QR code of UTF-8 encoding.
Bug: 131851854
Test: manual
Change-Id: I96a5e72a978c654b62d89b3b11dd3016bf0ee1df
1. Use GlifLayout in all fragments
2. Fragments use 32dp icon instead of 48 dp
3. Replace ScrollView & ProgressBar & Header & Footer of original layout with GlifLayout design
4. Remove ActionBar (no more back button on screen top)
Bug: 129021867
Test: manual
Change-Id: I2fda48cb7f7819b2c8dd85c10d39e1f187463bd8
The feature failed after the CL "Force the adapter to rebind cards with
a toggle".
Because toggle slices have been forced to rebind after starting another
activity and when any slice is updating. This unpins Wi-Fi slice and
stops WifiScanWorker and then clears the saved clicked network.
Solution:
1. Change ConnectToWifiHandler from activity to receiver and send
broadcasts to it with FLAG_RECEIVER_FOREGROUND, so Wi-Fi slice won't
be forced to rebind.
2. Seperate Wi-Fi scan worker and contextual Wi-Fi scan worker. Keep the
original logic for the generic one, and then add the logic below to
the contextual one.
3. Do not clear the saved clicked network when slice is unppined because
it happens frequently in contextual homepage.
4. Introduce a static long in ContextualWifiScanWorker that updates once
in every visible UI session. A session is when the screen is visible
to user.
5. Use session token to determine whether auto-starting captive portal
is needed.
Fixes: 128056349
Test: robotest, visual in homepage and network panel
Change-Id: I9e03c379806e124fa7253b2a635574b2433f6afc
We should make sure both 'Use location' & 'Wi-Fi scanning' are enabled
before calling setWifiWakeupEnabled.
Bug: 131777439
Test: manual
Change-Id: I602917cfa7c5581ecb414e8c44b4e20c8f9ea78d
- Sync the Wi-Fi slice items subtexts with Wi-Fi page, and add
"Not connected" when the returned subtext is empty
- Wi-Fi slice header subtext just simply reveals on/off state
- Add a placeholder to the loading row to sync its height with other
rows
- Show contextual Wi-Fi slice when the connected network is captive
portal, is invalidated, or has limited connectivity
Bug: 130751985
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I0b2715295f00edc8dd7d6d75b7fdc18263675797
To improve UX, show summary as "Disconnected" is more make sense to end
user instead of "Saved" in detail page, it's decision-maker to click
connect button.
Bug: 131119614
Test: manual test
Test: make RunSettingsRoboTests -j32 ROBOTEST_FILTER=com.android.settings.wifi.details.WifiDetailPreferenceControllerTest
Change-Id: I26ea0c566daab6214a596509f972005fd37fab4d
If user click connect button and then receive timeout event after leave
detail page, the NPE happened. Ignore the timeout event if activity
already gone.
Bug: 131141866
Test: manual test
Test: make RunSettingsRoboTests -j32 ROBOTEST_FILTER=com.android.settings.wifi.details.WifiDetailPreferenceControllerTest
Change-Id: Ic22c22027386d4a6de5d693eafcd9cd463ed3415
Save the SSID when the user clicks the network, and then automatically
start login page when the network gets the captive portal capability.
Fixes: 128056349
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Ia25241a8243d7d6aae604f341b512350404d9fd1