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