From 8189b40067ab4db04e7002035f0c1fbc753e50c3 Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Fri, 18 Oct 2024 19:13:15 +0800 Subject: [PATCH] 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 --- .../network/NetworkProviderSettings.java | 16 ++++++++++++---- .../network/NetworkProviderSettingsTest.java | 5 +++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/com/android/settings/network/NetworkProviderSettings.java b/src/com/android/settings/network/NetworkProviderSettings.java index 69183ff25c0..b268461a0ec 100644 --- a/src/com/android/settings/network/NetworkProviderSettings.java +++ b/src/com/android/settings/network/NetworkProviderSettings.java @@ -64,8 +64,8 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.settings.AirplaneModeEnabler; import com.android.settings.R; -import com.android.settings.RestrictedSettingsFragment; import com.android.settings.core.SubSettingLauncher; +import com.android.settings.dashboard.RestrictedDashboardFragment; import com.android.settings.datausage.DataUsagePreference; import com.android.settings.datausage.DataUsageUtils; import com.android.settings.location.WifiScanningFragment; @@ -104,7 +104,7 @@ import java.util.Optional; * UI for Mobile network and Wi-Fi network settings. */ @SearchIndexable -public class NetworkProviderSettings extends RestrictedSettingsFragment +public class NetworkProviderSettings extends RestrictedDashboardFragment implements Indexable, WifiPickerTracker.WifiPickerTrackerCallback, WifiDialog2.WifiDialog2Listener, DialogInterface.OnDismissListener, AirplaneModeEnabler.OnAirplaneModeChangedListener, InternetUpdater.InternetChangeListener { @@ -356,9 +356,17 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment mIsGuest = userManager.isGuestUser(); } - private void addPreferences() { - addPreferencesFromResource(R.xml.network_provider_settings); + @Override + 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); updateAirplaneModeMsgPreference(mAirplaneModeEnabler.isAirplaneModeOn() /* visible */); mConnectedWifiEntryPreferenceCategory = findPreference(PREF_KEY_CONNECTED_ACCESS_POINTS); diff --git a/tests/robotests/src/com/android/settings/network/NetworkProviderSettingsTest.java b/tests/robotests/src/com/android/settings/network/NetworkProviderSettingsTest.java index 400f73f7f56..df399d779e1 100644 --- a/tests/robotests/src/com/android/settings/network/NetworkProviderSettingsTest.java +++ b/tests/robotests/src/com/android/settings/network/NetworkProviderSettingsTest.java @@ -70,6 +70,7 @@ import androidx.test.core.app.ApplicationProvider; import com.android.settings.AirplaneModeEnabler; import com.android.settings.R; +import com.android.settings.dashboard.DashboardFeatureProvider; import com.android.settings.datausage.DataUsagePreference; import com.android.settings.testutils.shadow.ShadowDataUsageUtils; 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.Implements; import org.robolectric.shadows.ShadowToast; +import org.robolectric.util.ReflectionHelpers; import java.util.List; @@ -190,6 +192,9 @@ public class NetworkProviderSettingsTest { .when(mFirstWifiEntryPreferenceCategory).getKey(); mNetworkProviderSettings.mFirstWifiEntryPreferenceCategory = mFirstWifiEntryPreferenceCategory; + + ReflectionHelpers.setField(mNetworkProviderSettings, "mDashboardFeatureProvider", + mock(DashboardFeatureProvider.class)); } @Test