diff --git a/src/com/android/settings/panel/InternetConnectivityPanel.java b/src/com/android/settings/panel/InternetConnectivityPanel.java index 312bf75b284..64a4699cda9 100644 --- a/src/com/android/settings/panel/InternetConnectivityPanel.java +++ b/src/com/android/settings/panel/InternetConnectivityPanel.java @@ -34,10 +34,6 @@ import java.util.List; /** * Represents the Internet Connectivity Panel. - * - *
- * Displays Wifi (full Slice) and Airplane mode. - *
*/ public class InternetConnectivityPanel implements PanelContent { @@ -78,6 +74,21 @@ public class InternetConnectivityPanel implements PanelContent { .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } + @Override + public boolean isCustomizedButtonUsed() { + return Utils.isProviderModelEnabled(mContext); + } + + @Override + public CharSequence getCustomizedButtonTitle() { + return mContext.getText(R.string.settings_button); + } + + @Override + public void onClickCustomizedButton() { + mContext.startActivity(getSeeMoreIntent()); + } + @Override public int getMetricsCategory() { return SettingsEnums.PANEL_INTERNET_CONNECTIVITY; diff --git a/src/com/android/settings/panel/PanelFragment.java b/src/com/android/settings/panel/PanelFragment.java index cc27683933e..8eec24fa148 100644 --- a/src/com/android/settings/panel/PanelFragment.java +++ b/src/com/android/settings/panel/PanelFragment.java @@ -452,13 +452,13 @@ public class PanelFragment extends Fragment { View.OnClickListener getSeeMoreListener() { return (v) -> { mPanelClosedKey = PanelClosedKeys.KEY_SEE_MORE; + final FragmentActivity activity = getActivity(); if (mPanel.isCustomizedButtonUsed()) { mPanel.onClickCustomizedButton(); } else { - final FragmentActivity activity = getActivity(); activity.startActivityForResult(mPanel.getSeeMoreIntent(), 0); - activity.finish(); } + activity.finish(); }; } diff --git a/tests/robotests/src/com/android/settings/panel/InternetConnectivityPanelTest.java b/tests/robotests/src/com/android/settings/panel/InternetConnectivityPanelTest.java index d9f56debc02..eb82d31745e 100644 --- a/tests/robotests/src/com/android/settings/panel/InternetConnectivityPanelTest.java +++ b/tests/robotests/src/com/android/settings/panel/InternetConnectivityPanelTest.java @@ -20,10 +20,12 @@ package com.android.settings.panel; import static com.google.common.truth.Truth.assertThat; import android.net.Uri; +import android.os.SystemProperties; import com.android.settings.network.AirplaneModePreferenceController; import com.android.settings.slices.CustomSliceRegistry; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -37,14 +39,25 @@ import java.util.List; public class InternetConnectivityPanelTest { private InternetConnectivityPanel mPanel; + private static final String SETTINGS_PROVIDER_MODEL = + "persist.sys.fflag.override.settings_provider_model"; + private boolean mSettingsProviderModelState; @Before public void setUp() { mPanel = InternetConnectivityPanel.create(RuntimeEnvironment.application); + mSettingsProviderModelState = SystemProperties.getBoolean(SETTINGS_PROVIDER_MODEL, false); + } + + @After + public void tearDown() { + SystemProperties.set(SETTINGS_PROVIDER_MODEL, + mSettingsProviderModelState ? "true" : "false"); } @Test - public void getSlices_containsNecessarySlices() { + public void getSlices_providerModelDisabled_containsNecessarySlices() { + SystemProperties.set(SETTINGS_PROVIDER_MODEL, "false"); final List