Make NetworkProviderSettings extend RestrictedDashboardFragment

RestrictedSettingsFragment is deprecated and no longer supported. To be
compatible with catalyst, change the super class to
RestrictedDashboardFragment.

Bug: 372733639
Test: atest NetworkProviderSettingsTest, manual tests with user restrictions
Flag: EXEMPT N/A
Change-Id: I02b08363dadd5739a1d348f099d439b9f82ffb18
This commit is contained in:
Jason Chiu
2024-10-18 19:13:15 +08:00
parent 037aae979d
commit 8189b40067
2 changed files with 17 additions and 4 deletions

View File

@@ -64,8 +64,8 @@ import androidx.recyclerview.widget.RecyclerView;
import com.android.settings.AirplaneModeEnabler; import com.android.settings.AirplaneModeEnabler;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.RestrictedSettingsFragment;
import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.SubSettingLauncher;
import com.android.settings.dashboard.RestrictedDashboardFragment;
import com.android.settings.datausage.DataUsagePreference; import com.android.settings.datausage.DataUsagePreference;
import com.android.settings.datausage.DataUsageUtils; import com.android.settings.datausage.DataUsageUtils;
import com.android.settings.location.WifiScanningFragment; import com.android.settings.location.WifiScanningFragment;
@@ -104,7 +104,7 @@ import java.util.Optional;
* UI for Mobile network and Wi-Fi network settings. * UI for Mobile network and Wi-Fi network settings.
*/ */
@SearchIndexable @SearchIndexable
public class NetworkProviderSettings extends RestrictedSettingsFragment public class NetworkProviderSettings extends RestrictedDashboardFragment
implements Indexable, WifiPickerTracker.WifiPickerTrackerCallback, implements Indexable, WifiPickerTracker.WifiPickerTrackerCallback,
WifiDialog2.WifiDialog2Listener, DialogInterface.OnDismissListener, WifiDialog2.WifiDialog2Listener, DialogInterface.OnDismissListener,
AirplaneModeEnabler.OnAirplaneModeChangedListener, InternetUpdater.InternetChangeListener { AirplaneModeEnabler.OnAirplaneModeChangedListener, InternetUpdater.InternetChangeListener {
@@ -356,9 +356,17 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
mIsGuest = userManager.isGuestUser(); mIsGuest = userManager.isGuestUser();
} }
private void addPreferences() { @Override
addPreferencesFromResource(R.xml.network_provider_settings); protected String getLogTag() {
return TAG;
}
@Override
protected int getPreferenceScreenResId() {
return R.xml.network_provider_settings;
}
private void addPreferences() {
mAirplaneModeMsgPreference = findPreference(PREF_KEY_AIRPLANE_MODE_MSG); mAirplaneModeMsgPreference = findPreference(PREF_KEY_AIRPLANE_MODE_MSG);
updateAirplaneModeMsgPreference(mAirplaneModeEnabler.isAirplaneModeOn() /* visible */); updateAirplaneModeMsgPreference(mAirplaneModeEnabler.isAirplaneModeOn() /* visible */);
mConnectedWifiEntryPreferenceCategory = findPreference(PREF_KEY_CONNECTED_ACCESS_POINTS); mConnectedWifiEntryPreferenceCategory = findPreference(PREF_KEY_CONNECTED_ACCESS_POINTS);

View File

@@ -70,6 +70,7 @@ import androidx.test.core.app.ApplicationProvider;
import com.android.settings.AirplaneModeEnabler; import com.android.settings.AirplaneModeEnabler;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.datausage.DataUsagePreference; import com.android.settings.datausage.DataUsagePreference;
import com.android.settings.testutils.shadow.ShadowDataUsageUtils; import com.android.settings.testutils.shadow.ShadowDataUsageUtils;
import com.android.settings.testutils.shadow.ShadowFragment; import com.android.settings.testutils.shadow.ShadowFragment;
@@ -98,6 +99,7 @@ import org.robolectric.annotation.Config;
import org.robolectric.annotation.Implementation; import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements; import org.robolectric.annotation.Implements;
import org.robolectric.shadows.ShadowToast; import org.robolectric.shadows.ShadowToast;
import org.robolectric.util.ReflectionHelpers;
import java.util.List; import java.util.List;
@@ -190,6 +192,9 @@ public class NetworkProviderSettingsTest {
.when(mFirstWifiEntryPreferenceCategory).getKey(); .when(mFirstWifiEntryPreferenceCategory).getKey();
mNetworkProviderSettings.mFirstWifiEntryPreferenceCategory = mNetworkProviderSettings.mFirstWifiEntryPreferenceCategory =
mFirstWifiEntryPreferenceCategory; mFirstWifiEntryPreferenceCategory;
ReflectionHelpers.setField(mNetworkProviderSettings, "mDashboardFeatureProvider",
mock(DashboardFeatureProvider.class));
} }
@Test @Test