diff --git a/src/com/android/settings/wifi/WifiSettings2.java b/src/com/android/settings/wifi/WifiSettings2.java index ac5e31cd5f4..96f3a4f31c4 100644 --- a/src/com/android/settings/wifi/WifiSettings2.java +++ b/src/com/android/settings/wifi/WifiSettings2.java @@ -76,11 +76,8 @@ import com.android.settingslib.search.SearchIndexable; import com.android.settingslib.search.SearchIndexableRaw; import com.android.settingslib.wifi.LongPressWifiEntryPreference; import com.android.wifitrackerlib.WifiEntry; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.ConnectStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.DisconnectStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.ForgetStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.SignInStatus; +import com.android.wifitrackerlib.WifiEntry.ConnectCallback; +import com.android.wifitrackerlib.WifiEntry.ConnectCallback.ConnectStatus; import com.android.wifitrackerlib.WifiPickerTracker; import java.time.Clock; @@ -504,7 +501,7 @@ public class WifiSettings2 extends RestrictedSettingsFragment connect(mSelectedWifiEntry, true /* editIfNoConfig */, false /* fullScreenEdit */); return true; case MENU_ID_DISCONNECT: - mSelectedWifiEntry.disconnect(); + mSelectedWifiEntry.disconnect(null /* callback */); return true; case MENU_ID_FORGET: forget(mSelectedWifiEntry); @@ -680,7 +677,7 @@ public class WifiSettings2 extends RestrictedSettingsFragment mConnectedWifiEntryPreferenceCategory.addPreference(pref); pref.setOnPreferenceClickListener(preference -> { if (connectedEntry.canSignIn()) { - connectedEntry.signIn(); + connectedEntry.signIn(null /* callback */); } else { launchNetworkDetailsFragment(pref); } @@ -908,7 +905,7 @@ public class WifiSettings2 extends RestrictedSettingsFragment private void forget(WifiEntry wifiEntry) { mMetricsFeatureProvider.action(getActivity(), SettingsEnums.ACTION_WIFI_FORGET); - wifiEntry.forget(); + wifiEntry.forget(null /* callback */); } private void connect(WifiEntry wifiEntry, boolean editIfNoConfig, boolean fullScreenEdit) { @@ -916,11 +913,9 @@ public class WifiSettings2 extends RestrictedSettingsFragment wifiEntry.isSaved()); // If it's an unsaved secure WifiEntry, it will callback - // WifiEntryCallback#onConnectResult with - // WifiEntryCallback#CONNECT_STATUS_FAILURE_NO_CONFIG - wifiEntry.setListener(new WifiEntryConnectCallback(wifiEntry, editIfNoConfig, + // ConnectCallback#onConnectResult with ConnectCallback#CONNECT_STATUS_FAILURE_NO_CONFIG + wifiEntry.connect(new WifiEntryConnectCallback(wifiEntry, editIfNoConfig, fullScreenEdit)); - wifiEntry.connect(); } private class WifiSaveThenConnectActionListener implements WifiManager.ActionListener { @@ -986,7 +981,7 @@ public class WifiSettings2 extends RestrictedSettingsFragment } }; - private class WifiEntryConnectCallback implements WifiEntryCallback { + private class WifiEntryConnectCallback implements ConnectCallback { final WifiEntry mConnectWifiEntry; final boolean mEditIfNoConfig; final boolean mFullScreenEdit; @@ -998,11 +993,6 @@ public class WifiSettings2 extends RestrictedSettingsFragment mFullScreenEdit = fullScreenEdit; } - @Override - public void onUpdated() { - // Do nothing. - } - @Override public void onConnectResult(@ConnectStatus int status) { final Activity activity = getActivity(); @@ -1010,7 +1000,7 @@ public class WifiSettings2 extends RestrictedSettingsFragment return; } - if (status == WifiEntryCallback.CONNECT_STATUS_FAILURE_NO_CONFIG) { + if (status == ConnectCallback.CONNECT_STATUS_FAILURE_NO_CONFIG) { if (mEditIfNoConfig) { // Edit an unsaved secure Wi-Fi network. if (mFullScreenEdit) { @@ -1033,21 +1023,6 @@ public class WifiSettings2 extends RestrictedSettingsFragment Toast.LENGTH_SHORT).show(); } } - - @Override - public void onDisconnectResult(@DisconnectStatus int status) { - // Do nothing. - } - - @Override - public void onForgetResult(@ForgetStatus int status) { - // Do nothing. - } - - @Override - public void onSignInResult(@SignInStatus int status) { - // Do nothing. - } } private boolean isFisishingOrDestroyed(Activity activity) { diff --git a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java index 5f74d564af8..50927e3f141 100644 --- a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java +++ b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java @@ -75,12 +75,14 @@ import com.android.settingslib.core.lifecycle.events.OnResume; import com.android.settingslib.widget.ActionButtonsPreference; import com.android.settingslib.widget.LayoutPreference; import com.android.wifitrackerlib.WifiEntry; +import com.android.wifitrackerlib.WifiEntry.ConnectCallback; +import com.android.wifitrackerlib.WifiEntry.ConnectCallback.ConnectStatus; import com.android.wifitrackerlib.WifiEntry.ConnectedInfo; +import com.android.wifitrackerlib.WifiEntry.ForgetCallback; +import com.android.wifitrackerlib.WifiEntry.ForgetCallback.ForgetStatus; +import com.android.wifitrackerlib.WifiEntry.SignInCallback; +import com.android.wifitrackerlib.WifiEntry.SignInCallback.SignInStatus; import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.ConnectStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.DisconnectStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.ForgetStatus; -import com.android.wifitrackerlib.WifiEntry.WifiEntryCallback.SignInStatus; import java.net.Inet4Address; import java.net.Inet6Address; @@ -95,7 +97,7 @@ import java.util.stream.Collectors; */ public class WifiDetailPreferenceController2 extends AbstractPreferenceController implements PreferenceControllerMixin, WifiDialog2Listener, LifecycleObserver, OnPause, - OnResume, WifiEntryCallback { + OnResume, WifiEntryCallback, ConnectCallback, ForgetCallback, SignInCallback { private static final String TAG = "WifiDetailsPrefCtrl2"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); @@ -214,8 +216,6 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle || hasCapabilityChanged(nc, NET_CAPABILITY_VALIDATED) || hasCapabilityChanged(nc, NET_CAPABILITY_CAPTIVE_PORTAL) || hasCapabilityChanged(nc, NET_CAPABILITY_PARTIAL_CONNECTIVITY)) { - // TODO(b/143326832): What to do with WifiEntry? - // mAccessPoint.update(mWifiConfig, mWifiInfo, mNetworkInfo); refreshEntityHeader(); } mNetworkCapabilities = nc; @@ -706,7 +706,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle showConfirmForgetDialog(); return; } else { - mWifiEntry.forget(); + mWifiEntry.forget(this); } mMetricsFeatureProvider.action( @@ -719,7 +719,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle final AlertDialog dialog = new AlertDialog.Builder(mContext) .setPositiveButton(R.string.forget, ((dialog1, which) -> { try { - mWifiEntry.forget(); + mWifiEntry.forget(this); } catch (RuntimeException e) { Log.e(TAG, "Failed to remove Passpoint configuration for " + WifiEntryShell.getPasspointFqdn(mWifiEntry)); @@ -768,7 +768,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle private void signIntoNetwork() { mMetricsFeatureProvider.action( mFragment.getActivity(), SettingsEnums.ACTION_WIFI_SIGNIN); - mConnectivityManager.startCaptivePortalApp(mNetwork); + mWifiEntry.signIn(this); } @Override @@ -814,7 +814,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle @VisibleForTesting void connectNetwork() { - mWifiEntry.connect(); + mWifiEntry.connect(this); } private void refreshMacTitle() { @@ -849,7 +849,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle */ @Override public void onConnectResult(@ConnectStatus int status) { - if (status == WifiEntryCallback.CONNECT_STATUS_SUCCESS) { + if (status == ConnectCallback.CONNECT_STATUS_SUCCESS) { Toast.makeText(mContext, mContext.getString(R.string.wifi_connected_to_message, mWifiEntry.getTitle()), Toast.LENGTH_SHORT).show(); @@ -868,25 +868,26 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle .setButton3Visible(true); } + // TODO: Add disconnect button. /** * Result of the disconnect request indicated by the DISCONNECT_STATUS constants. */ - @Override - public void onDisconnectResult(@DisconnectStatus int status) { - if (status != WifiEntryCallback.DISCONNECT_STATUS_SUCCESS) { - Log.e(TAG, "Disconnect Wi-Fi network failed"); - } - - updateNetworkInfo(); - refreshPage(); - } + //@Override + //public void onDisconnectResult(@DisconnectStatus int status) { + // if (status != DisconnectCallback.DISCONNECT_STATUS_SUCCESS) { + // Log.e(TAG, "Disconnect Wi-Fi network failed"); + // } + // + // updateNetworkInfo(); + // refreshPage(); + //} /** * Result of the forget request indicated by the FORGET_STATUS constants. */ @Override public void onForgetResult(@ForgetStatus int status) { - if (status != WifiEntryCallback.FORGET_STATUS_SUCCESS) { + if (status != ForgetCallback.FORGET_STATUS_SUCCESS) { Log.e(TAG, "Forget Wi-Fi network failed"); } diff --git a/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java index db4cb6c696c..b87b05df1dc 100644 --- a/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java +++ b/src/com/android/settings/wifi/details2/WifiPrivacyPreferenceController2.java @@ -88,7 +88,7 @@ public class WifiPrivacyPreferenceController2 extends BasePreferenceController i // To activate changing, we need to reconnect network. WiFi will auto connect to // current network after disconnect(). Only needed when this is connected network. if (mWifiEntry.getConnectedState() == WifiEntry.CONNECTED_STATE_CONNECTED) { - mWifiEntry.disconnect(); + mWifiEntry.disconnect(null /* callback */); } } updateSummary((DropDownPreference) preference, privacy);