Merge "Fix Wi-Fi "Network usage" and "Privacy" drop down" into tm-dev
This commit is contained in:
@@ -58,14 +58,14 @@
|
||||
android:title="@string/wifi_security"
|
||||
android:selectable="false"/>
|
||||
|
||||
<DropDownPreference
|
||||
<ListPreference
|
||||
android:key="metered"
|
||||
android:icon="@drawable/ic_attach_money_black_24dp"
|
||||
android:title="@string/wifi_metered_title"
|
||||
android:entries="@array/wifi_metered_entries"
|
||||
android:entryValues="@array/wifi_metered_values"/>
|
||||
|
||||
<DropDownPreference
|
||||
<ListPreference
|
||||
android:key="privacy"
|
||||
android:icon="@drawable/ic_wifi_privacy_24dp"
|
||||
android:title="@string/wifi_privacy_settings"
|
||||
|
@@ -21,7 +21,7 @@ import android.content.Context;
|
||||
import android.net.wifi.WifiConfiguration;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.DropDownPreference;
|
||||
import androidx.preference.ListPreference;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
@@ -30,13 +30,13 @@ import com.android.settings.wifi.WifiDialog2;
|
||||
import com.android.wifitrackerlib.WifiEntry;
|
||||
|
||||
/**
|
||||
* {@link AbstractPreferenceController} that controls whether the wifi network is metered or not
|
||||
* A controller that controls whether the Wi-Fi network is metered or not.
|
||||
*/
|
||||
public class WifiMeteredPreferenceController2 extends BasePreferenceController implements
|
||||
Preference.OnPreferenceChangeListener, WifiDialog2.WifiDialog2Listener {
|
||||
|
||||
private static final String KEY_WIFI_METERED = "metered";
|
||||
private WifiEntry mWifiEntry;
|
||||
private final WifiEntry mWifiEntry;
|
||||
private Preference mPreference;
|
||||
|
||||
public WifiMeteredPreferenceController2(Context context, WifiEntry wifiEntry) {
|
||||
@@ -46,11 +46,11 @@ public class WifiMeteredPreferenceController2 extends BasePreferenceController i
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
final DropDownPreference dropDownPreference = (DropDownPreference) preference;
|
||||
final ListPreference listPreference = (ListPreference) preference;
|
||||
final int meteredOverride = getMeteredOverride();
|
||||
preference.setSelectable(mWifiEntry.canSetMeteredChoice());
|
||||
dropDownPreference.setValue(Integer.toString(meteredOverride));
|
||||
updateSummary(dropDownPreference, meteredOverride);
|
||||
listPreference.setValue(Integer.toString(meteredOverride));
|
||||
updateSummary(listPreference, meteredOverride);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -66,7 +66,7 @@ public class WifiMeteredPreferenceController2 extends BasePreferenceController i
|
||||
|
||||
// Stage the backup of the SettingsProvider package which backs this up
|
||||
BackupManager.dataChanged("com.android.providers.settings");
|
||||
updateSummary((DropDownPreference) preference, getMeteredOverride());
|
||||
updateSummary((ListPreference) preference, getMeteredOverride());
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ public class WifiMeteredPreferenceController2 extends BasePreferenceController i
|
||||
return WifiEntry.METERED_CHOICE_AUTO;
|
||||
}
|
||||
|
||||
private void updateSummary(DropDownPreference preference, int meteredOverride) {
|
||||
private void updateSummary(ListPreference preference, int meteredOverride) {
|
||||
preference.setSummary(preference.getEntries()[meteredOverride]);
|
||||
}
|
||||
|
||||
|
@@ -21,7 +21,7 @@ import android.net.wifi.WifiConfiguration;
|
||||
import android.net.wifi.WifiManager;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.DropDownPreference;
|
||||
import androidx.preference.ListPreference;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
@@ -31,14 +31,13 @@ import com.android.settings.wifi.WifiDialog2;
|
||||
import com.android.wifitrackerlib.WifiEntry;
|
||||
|
||||
/**
|
||||
* {@link AbstractPreferenceController} that controls whether the wifi network is mac randomized
|
||||
* or not
|
||||
* A controller that controls whether the Wi-Fi network is mac randomized or not.
|
||||
*/
|
||||
public class WifiPrivacyPreferenceController2 extends BasePreferenceController implements
|
||||
Preference.OnPreferenceChangeListener, WifiDialog2.WifiDialog2Listener {
|
||||
|
||||
private static final String KEY_WIFI_PRIVACY = "privacy";
|
||||
private WifiManager mWifiManager;
|
||||
private final WifiManager mWifiManager;
|
||||
private WifiEntry mWifiEntry;
|
||||
private Preference mPreference;
|
||||
|
||||
@@ -66,16 +65,16 @@ public class WifiPrivacyPreferenceController2 extends BasePreferenceController i
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
final DropDownPreference dropDownPreference = (DropDownPreference) preference;
|
||||
final ListPreference listPreference = (ListPreference) preference;
|
||||
final int randomizationLevel = getRandomizationValue();
|
||||
final boolean isSelectable = mWifiEntry.canSetPrivacy();
|
||||
preference.setSelectable(isSelectable);
|
||||
dropDownPreference.setValue(Integer.toString(randomizationLevel));
|
||||
updateSummary(dropDownPreference, randomizationLevel);
|
||||
listPreference.setValue(Integer.toString(randomizationLevel));
|
||||
updateSummary(listPreference, randomizationLevel);
|
||||
|
||||
// If the preference cannot be selectable, display a temporary network in the summary.
|
||||
if (!isSelectable) {
|
||||
dropDownPreference.setSummary(R.string.wifi_privacy_settings_ephemeral_summary);
|
||||
listPreference.setSummary(R.string.wifi_privacy_settings_ephemeral_summary);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +89,7 @@ public class WifiPrivacyPreferenceController2 extends BasePreferenceController i
|
||||
mWifiEntry.disconnect(null /* callback */);
|
||||
mWifiEntry.connect(null /* callback */);
|
||||
}
|
||||
updateSummary((DropDownPreference) preference, privacy);
|
||||
updateSummary((ListPreference) preference, privacy);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -124,7 +123,7 @@ public class WifiPrivacyPreferenceController2 extends BasePreferenceController i
|
||||
? WifiEntry.PRIVACY_RANDOMIZED_MAC : WifiEntry.PRIVACY_DEVICE_MAC;
|
||||
}
|
||||
|
||||
private void updateSummary(DropDownPreference preference, int macRandomized) {
|
||||
private void updateSummary(ListPreference preference, int macRandomized) {
|
||||
// Translates value here to set RANDOMIZATION_PERSISTENT as first item in UI for better UX.
|
||||
final int prefMacRandomized = translateMacRandomizedValueToPrefValue(macRandomized);
|
||||
preference.setSummary(preference.getEntries()[prefMacRandomized]);
|
||||
|
Reference in New Issue
Block a user