Do not delay updating WifiEntries for first onWifiEntriesUpdated()
The first callback of onWifiEntriesUpdated() after an onStart() should update the list of WifiEntries without a delay. The callbacks afterwards should remain delayed to show the progress bar. Bug: 187473420 Test: build, visual inspection of entries being updated Change-Id: Ie11ac156673b261157411e4d6216c454266b51a9
This commit is contained in:
@@ -169,6 +169,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
return WifiPickerTracker.isVerboseLoggingEnabled();
|
return WifiPickerTracker.isVerboseLoggingEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean mIsWifiEntryListStale = true;
|
||||||
private final Runnable mUpdateWifiEntryPreferencesRunnable = () -> {
|
private final Runnable mUpdateWifiEntryPreferencesRunnable = () -> {
|
||||||
updateWifiEntryPreferences();
|
updateWifiEntryPreferences();
|
||||||
};
|
};
|
||||||
@@ -437,6 +438,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStop() {
|
public void onStop() {
|
||||||
|
mIsWifiEntryListStale = true;
|
||||||
getView().removeCallbacks(mUpdateWifiEntryPreferencesRunnable);
|
getView().removeCallbacks(mUpdateWifiEntryPreferencesRunnable);
|
||||||
getView().removeCallbacks(mHideProgressBarRunnable);
|
getView().removeCallbacks(mHideProgressBarRunnable);
|
||||||
mAirplaneModeEnabler.stop();
|
mAirplaneModeEnabler.stop();
|
||||||
@@ -698,7 +700,12 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onWifiEntriesChanged() {
|
public void onWifiEntriesChanged() {
|
||||||
|
if (mIsWifiEntryListStale) {
|
||||||
|
mIsWifiEntryListStale = false;
|
||||||
|
updateWifiEntryPreferences();
|
||||||
|
} else {
|
||||||
updateWifiEntryPreferencesDelayed();
|
updateWifiEntryPreferencesDelayed();
|
||||||
|
}
|
||||||
changeNextButtonState(mWifiPickerTracker.getConnectedWifiEntry() != null);
|
changeNextButtonState(mWifiPickerTracker.getConnectedWifiEntry() != null);
|
||||||
|
|
||||||
// Edit the Wi-Fi network of specified SSID.
|
// Edit the Wi-Fi network of specified SSID.
|
||||||
|
@@ -160,6 +160,7 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
return WifiPickerTracker.isVerboseLoggingEnabled();
|
return WifiPickerTracker.isVerboseLoggingEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean mIsWifiEntryListStale = true;
|
||||||
private final Runnable mUpdateWifiEntryPreferencesRunnable = () -> {
|
private final Runnable mUpdateWifiEntryPreferencesRunnable = () -> {
|
||||||
updateWifiEntryPreferences();
|
updateWifiEntryPreferences();
|
||||||
};
|
};
|
||||||
@@ -421,6 +422,7 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
public void onStop() {
|
public void onStop() {
|
||||||
getView().removeCallbacks(mUpdateWifiEntryPreferencesRunnable);
|
getView().removeCallbacks(mUpdateWifiEntryPreferencesRunnable);
|
||||||
getView().removeCallbacks(mHideProgressBarRunnable);
|
getView().removeCallbacks(mHideProgressBarRunnable);
|
||||||
|
mIsWifiEntryListStale = true;
|
||||||
super.onStop();
|
super.onStop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -678,7 +680,12 @@ public class WifiSettings extends RestrictedSettingsFragment
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onWifiEntriesChanged() {
|
public void onWifiEntriesChanged() {
|
||||||
|
if (mIsWifiEntryListStale) {
|
||||||
|
mIsWifiEntryListStale = false;
|
||||||
|
updateWifiEntryPreferences();
|
||||||
|
} else {
|
||||||
updateWifiEntryPreferencesDelayed();
|
updateWifiEntryPreferencesDelayed();
|
||||||
|
}
|
||||||
changeNextButtonState(mWifiPickerTracker.getConnectedWifiEntry() != null);
|
changeNextButtonState(mWifiPickerTracker.getConnectedWifiEntry() != null);
|
||||||
|
|
||||||
// Edit the Wi-Fi network of specified SSID.
|
// Edit the Wi-Fi network of specified SSID.
|
||||||
|
Reference in New Issue
Block a user