Commit 905e2864 authored by Irfan Sheriff's avatar Irfan Sheriff Committed by Android (Google) Code Review
Browse files

Merge "Changing wifi connection dialog per UX"

parents 15430501 d621e093
......@@ -26,37 +26,6 @@
<LinearLayout android:id="@+id/info"
style="@style/wifi_section" />
<LinearLayout android:id="@+id/setup_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_network_setup" />
<Spinner android:id="@+id/network_setup"
style="@style/wifi_item_content"
android:prompt="@string/wifi_network_setup"
android:entries="@array/wifi_network_setup" />
</LinearLayout>
<LinearLayout android:id="@+id/wps_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_wps_pin" />
<EditText android:id="@+id/wps_pin"
style="@style/wifi_item_content"
android:singleLine="true"
android:inputType="textPassword" />
</LinearLayout>
<LinearLayout android:id="@+id/type"
style="@style/wifi_section"
android:visibility="gone">
......@@ -190,153 +159,197 @@
</LinearLayout>
</LinearLayout>
<LinearLayout android:id="@+id/proxy_settings_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView android:id="@+id/proxy_settings_title"
style="@style/wifi_item_label"
android:text="@string/proxy_settings_title" />
<Spinner android:id="@+id/proxy_settings"
style="@style/wifi_item_content"
android:prompt="@string/proxy_settings_title"
android:entries="@array/wifi_proxy_settings" />
</LinearLayout>
<LinearLayout android:id="@+id/proxy_warning_limited_support"
<LinearLayout android:id="@+id/wifi_advanced_toggle"
style="@style/wifi_item"
android:visibility="gone">
<!-- Dummy to enable right-justification of warning -->
<TextView
style="@style/wifi_item_label" />
<TextView
<CheckBox android:id="@+id/wifi_advanced_togglebox"
style="@style/wifi_item_content"
android:text="@string/proxy_warning_limited_support" />
android:textSize="14sp"
android:text="@string/wifi_show_advanced" />
</LinearLayout>
<LinearLayout android:id="@+id/proxy_fields"
style="@style/wifi_section"
android:visibility="gone">
<LinearLayout android:id="@+id/wifi_advanced_fields"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<LinearLayout android:id="@+id/setup_fields"
style="@style/wifi_item"
android:visibility="gone">
<LinearLayout style="@style/wifi_item">
<TextView
style="@style/wifi_item_label"
android:text="@string/proxy_hostname_label" />
android:text="@string/wifi_network_setup" />
<EditText android:id="@+id/proxy_hostname"
<Spinner android:id="@+id/network_setup"
style="@style/wifi_item_content"
android:hint="@string/proxy_hostname_hint"
android:inputType="textNoSuggestions"
android:singleLine="true" />
android:prompt="@string/wifi_network_setup"
android:entries="@array/wifi_network_setup" />
</LinearLayout>
<LinearLayout style="@style/wifi_item">
<LinearLayout android:id="@+id/wps_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView
style="@style/wifi_item_label"
android:text="@string/proxy_port_label" />
android:text="@string/wifi_wps_pin" />
<EditText android:id="@+id/proxy_port"
<EditText android:id="@+id/wps_pin"
style="@style/wifi_item_content"
android:hint="@string/proxy_port_hint"
android:inputType="number"
android:singleLine="true" />
android:singleLine="true"
android:inputType="textPassword" />
</LinearLayout>
<LinearLayout style="@style/wifi_item">
<TextView
<LinearLayout android:id="@+id/proxy_settings_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView android:id="@+id/proxy_settings_title"
style="@style/wifi_item_label"
android:text="@string/proxy_exclusionlist_label" />
android:text="@string/proxy_settings_title" />
<EditText android:id="@+id/proxy_exclusionlist"
<Spinner android:id="@+id/proxy_settings"
style="@style/wifi_item_content"
android:hint="@string/proxy_exclusionlist_hint"
android:inputType="textNoSuggestions"
android:singleLine="true" />
android:prompt="@string/proxy_settings_title"
android:entries="@array/wifi_proxy_settings" />
</LinearLayout>
</LinearLayout>
<LinearLayout android:id="@+id/ip_fields"
style="@style/wifi_item"
android:visibility="gone">
<LinearLayout android:id="@+id/proxy_warning_limited_support"
style="@style/wifi_item"
android:visibility="gone">
<!-- Dummy to enable right-justification of warning -->
<TextView
style="@style/wifi_item_label" />
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_ip_settings" />
<TextView
style="@style/wifi_item_content"
android:text="@string/proxy_warning_limited_support" />
</LinearLayout>
<Spinner android:id="@+id/ip_settings"
style="@style/wifi_item_content"
android:prompt="@string/wifi_ip_settings"
android:entries="@array/wifi_ip_settings" />
<LinearLayout android:id="@+id/proxy_fields"
style="@style/wifi_section"
android:visibility="gone">
</LinearLayout>
<LinearLayout style="@style/wifi_item">
<TextView
style="@style/wifi_item_label"
android:text="@string/proxy_hostname_label" />
<LinearLayout android:id="@+id/staticip"
style="@style/wifi_section"
android:visibility="gone">
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_ip_address" />
<EditText android:id="@+id/proxy_hostname"
style="@style/wifi_item_content"
android:hint="@string/proxy_hostname_hint"
android:inputType="textNoSuggestions"
android:singleLine="true" />
</LinearLayout>
<LinearLayout style="@style/wifi_item">
<TextView
style="@style/wifi_item_label"
android:text="@string/proxy_port_label" />
<EditText android:id="@+id/ipaddress"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_ip_address_hint"
android:inputType="textNoSuggestions" />
<EditText android:id="@+id/proxy_port"
style="@style/wifi_item_content"
android:hint="@string/proxy_port_hint"
android:inputType="number"
android:singleLine="true" />
</LinearLayout>
<LinearLayout style="@style/wifi_item">
<TextView
style="@style/wifi_item_label"
android:text="@string/proxy_exclusionlist_label" />
<EditText android:id="@+id/proxy_exclusionlist"
style="@style/wifi_item_content"
android:hint="@string/proxy_exclusionlist_hint"
android:inputType="textNoSuggestions"
android:singleLine="true" />
</LinearLayout>
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<LinearLayout android:id="@+id/ip_fields"
style="@style/wifi_item"
android:visibility="gone">
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_gateway" />
android:text="@string/wifi_ip_settings" />
<EditText android:id="@+id/gateway"
<Spinner android:id="@+id/ip_settings"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_gateway_hint"
android:inputType="textNoSuggestions" />
android:prompt="@string/wifi_ip_settings"
android:entries="@array/wifi_ip_settings" />
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_network_prefix_length" />
<LinearLayout android:id="@+id/staticip"
style="@style/wifi_section"
android:visibility="gone">
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_ip_address" />
<EditText android:id="@+id/network_prefix_length"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_network_prefix_length_hint"
android:inputType="number" />
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_dns1" />
<EditText android:id="@+id/ipaddress"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_ip_address_hint"
android:inputType="textNoSuggestions" />
</LinearLayout>
<EditText android:id="@+id/dns1"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_dns1_hint"
android:inputType="textNoSuggestions" />
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_gateway" />
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_dns2" />
<EditText android:id="@+id/gateway"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_gateway_hint"
android:inputType="textNoSuggestions" />
</LinearLayout>
<EditText android:id="@+id/dns2"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_dns2_hint"
android:inputType="textNoSuggestions" />
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_network_prefix_length" />
<EditText android:id="@+id/network_prefix_length"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_network_prefix_length_hint"
android:inputType="number" />
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_dns1" />
<EditText android:id="@+id/dns1"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_dns1_hint"
android:inputType="textNoSuggestions" />
</LinearLayout>
<LinearLayout
style="@style/wifi_item" >
<TextView
style="@style/wifi_item_label"
android:text="@string/wifi_dns2" />
<EditText android:id="@+id/dns2"
style="@style/wifi_item_content"
android:singleLine="true"
android:hint="@string/wifi_dns2_hint"
android:inputType="textNoSuggestions" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
......@@ -457,13 +457,13 @@
<!-- Note that adding/removing/moving items will need wifi settings code change. -->
<string-array name="wifi_network_setup">
<!-- Manual wifi configuration [CHAR LIMIT=25]-->
<item>Manual</item>
<item>Off</item>
<!-- WPS is a new standard that allowes secure connection establishment to a home wireless network using a simplified process. WPS push button based configuration involves pushing a button on the router and the device [CHAR LIMIT=25]-->
<item>WPS push button</item>
<item>Push button</item>
<!-- WPS pin method based configuration. This requires entering a pin obtained from the access point [CHAR LIMIT=25] -->
<item>WPS pin from access point</item>
<item>Pin from access point</item>
<!-- WPS pin method based configuration. This requires generating a pin from this device [CHAR LIMIT=25] -->
<item>WPS pin from this device</item>
<item>Pin from this device</item>
</string-array>
<!-- Wi-Fi IP settings. -->
......
......@@ -1164,8 +1164,10 @@
<string name="wifi_empty_list_wifi_off">To see available networks, turn Wi-Fi on.</string>
<!-- Dialog for Access Points --> <skip />
<!-- Label to show/hide advanced options -->
<string name="wifi_show_advanced">Show advanced options</string>
<!-- Label for network setup [CHAR LIMIT=50] -->
<string name="wifi_network_setup">Network Setup</string>
<string name="wifi_network_setup">WPS</string>
<!-- Label for the text view for WPS pin input [CHAR LIMIT=50] -->
<string name="wifi_wps_pin">Enter pin from access point</string>
<!-- Title for the WPS setup dialog [CHAR LIMIT=50] -->
......
......@@ -182,8 +182,6 @@ public class WifiConfigController implements TextWatcher,
addRow(group, R.string.wifi_status, Summary.get(mConfigUi.getContext(), state));
}
addRow(group, R.string.wifi_security, mAccessPoint.getSecurityString(false));
int level = mAccessPoint.getLevel();
if (level != -1) {
String[] signal = resources.getStringArray(R.array.wifi_signal);
......@@ -195,10 +193,14 @@ public class WifiConfigController implements TextWatcher,
addRow(group, R.string.wifi_speed, info.getLinkSpeed() + WifiInfo.LINK_SPEED_UNITS);
}
addRow(group, R.string.wifi_security, mAccessPoint.getSecurityString(false));
boolean showAdvancedFields = false;
if (mAccessPoint.networkId != INVALID_NETWORK_ID) {
WifiConfiguration config = mAccessPoint.getConfig();
if (config.ipAssignment == IpAssignment.STATIC) {
mIpSettingsSpinner.setSelection(STATIC_IP);
showAdvancedFields = true;
} else {
mIpSettingsSpinner.setSelection(DHCP);
}
......@@ -210,6 +212,7 @@ public class WifiConfigController implements TextWatcher,
if (config.proxySettings == ProxySettings.STATIC) {
mProxySettingsSpinner.setSelection(PROXY_STATIC);
showAdvancedFields = true;
} else {
mProxySettingsSpinner.setSelection(PROXY_NONE);
}
......@@ -224,6 +227,12 @@ public class WifiConfigController implements TextWatcher,
showSecurityFields();
showIpConfigFields();
showProxyFields();
mView.findViewById(R.id.wifi_advanced_toggle).setVisibility(View.VISIBLE);
mView.findViewById(R.id.wifi_advanced_togglebox).setOnClickListener(this);
if (showAdvancedFields) {
((CheckBox) mView.findViewById(R.id.wifi_advanced_togglebox)).setChecked(true);
mView.findViewById(R.id.wifi_advanced_fields).setVisibility(View.VISIBLE);
}
}
if (mEdit) {
......@@ -726,10 +735,18 @@ public class WifiConfigController implements TextWatcher,
@Override
public void onClick(View view) {
mPasswordView.setInputType(
InputType.TYPE_CLASS_TEXT | (((CheckBox) view).isChecked() ?
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD :
InputType.TYPE_TEXT_VARIATION_PASSWORD));
if (view.getId() == R.id.show_password) {
mPasswordView.setInputType(
InputType.TYPE_CLASS_TEXT | (((CheckBox) view).isChecked() ?
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD :
InputType.TYPE_TEXT_VARIATION_PASSWORD));
} else if (view.getId() == R.id.wifi_advanced_togglebox) {
if (((CheckBox) view).isChecked()) {
mView.findViewById(R.id.wifi_advanced_fields).setVisibility(View.VISIBLE);
} else {
mView.findViewById(R.id.wifi_advanced_fields).setVisibility(View.GONE);
}
}
}
@Override
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment