Update AP preference to not be master switch pref
People keep getting confused by the master switch preference for wireless tethering. The wireless tethering page already has a switch so this just removes it from the preference and has it take you to the page when tapped on instead. Bug: 69423941 Test: robotests Change-Id: I66d6d3271e83b49ae77f203e7892438d27f96025
This commit is contained in:
@@ -19,7 +19,7 @@
|
|||||||
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
||||||
android:title="@string/tether_settings_title_all">
|
android:title="@string/tether_settings_title_all">
|
||||||
|
|
||||||
<com.android.settings.widget.MasterSwitchPreference
|
<Preference
|
||||||
android:key="wifi_tether"
|
android:key="wifi_tether"
|
||||||
android:title="@string/wifi_hotspot_checkbox_text"
|
android:title="@string/wifi_hotspot_checkbox_text"
|
||||||
android:summary="@string/summary_two_lines_placeholder"
|
android:summary="@string/summary_two_lines_placeholder"
|
||||||
|
@@ -25,14 +25,13 @@ import android.net.wifi.WifiConfiguration;
|
|||||||
import android.net.wifi.WifiManager;
|
import android.net.wifi.WifiManager;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.support.annotation.VisibleForTesting;
|
import android.support.annotation.VisibleForTesting;
|
||||||
|
import android.support.v7.preference.Preference;
|
||||||
import android.support.v7.preference.PreferenceScreen;
|
import android.support.v7.preference.PreferenceScreen;
|
||||||
import android.text.BidiFormatter;
|
import android.text.BidiFormatter;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.widget.MasterSwitchController;
|
|
||||||
import com.android.settings.widget.MasterSwitchPreference;
|
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
import com.android.settingslib.core.AbstractPreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
@@ -50,10 +49,9 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
|
|||||||
private final String[] mWifiRegexs;
|
private final String[] mWifiRegexs;
|
||||||
private final WifiManager mWifiManager;
|
private final WifiManager mWifiManager;
|
||||||
private final Lifecycle mLifecycle;
|
private final Lifecycle mLifecycle;
|
||||||
private WifiTetherSwitchBarController mSwitchController;
|
|
||||||
private int mSoftApState;
|
private int mSoftApState;
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
MasterSwitchPreference mPreference;
|
Preference mPreference;
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
WifiTetherSoftApManager mWifiTetherSoftApManager;
|
WifiTetherSoftApManager mWifiTetherSoftApManager;
|
||||||
|
|
||||||
@@ -88,14 +86,11 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
|
|||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
mPreference = (MasterSwitchPreference) screen.findPreference(WIFI_TETHER_SETTINGS);
|
mPreference = screen.findPreference(WIFI_TETHER_SETTINGS);
|
||||||
if (mPreference == null) {
|
if (mPreference == null) {
|
||||||
// unavailable
|
// unavailable
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mSwitchController = new WifiTetherSwitchBarController(
|
|
||||||
mContext, new MasterSwitchController(mPreference));
|
|
||||||
mLifecycle.addObserver(mSwitchController);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -122,48 +122,6 @@ public class WifiTetherPreferenceControllerTest {
|
|||||||
assertThat(mController.isAvailable()).isTrue();
|
assertThat(mController.isAvailable()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void startAndStop_shouldRegisterUnregisterReceiver() {
|
|
||||||
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
|
|
||||||
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_START);
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_STOP);
|
|
||||||
|
|
||||||
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
|
|
||||||
assertThat(ShadowWifiTetherSwitchBarController.onStopCalled).isTrue();
|
|
||||||
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
|
|
||||||
verify(mContext).unregisterReceiver(receiver);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void start_wifiApOff_shouldSetInitialStateToOff() {
|
|
||||||
when(mWifiManager.getWifiApState()).thenReturn(WifiManager.WIFI_AP_STATE_DISABLED);
|
|
||||||
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
|
|
||||||
final MasterSwitchPreference pref = mock(MasterSwitchPreference.class);
|
|
||||||
when(mScreen.findPreference(anyString())).thenReturn(pref);
|
|
||||||
|
|
||||||
mController.displayPreference(mScreen);
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_START);
|
|
||||||
|
|
||||||
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
|
|
||||||
verify(pref).setChecked(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void start_wifiApOn_shouldSetInitialStateToOn() {
|
|
||||||
when(mWifiManager.getWifiApState()).thenReturn(WifiManager.WIFI_AP_STATE_ENABLED);
|
|
||||||
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
|
|
||||||
final MasterSwitchPreference pref = mock(MasterSwitchPreference.class);
|
|
||||||
when(mScreen.findPreference(anyString())).thenReturn(pref);
|
|
||||||
|
|
||||||
mController.displayPreference(mScreen);
|
|
||||||
mLifecycle.handleLifecycleEvent(ON_START);
|
|
||||||
|
|
||||||
assertThat(ShadowWifiTetherSwitchBarController.onStartCalled).isTrue();
|
|
||||||
verify(mContext).registerReceiver(eq(receiver), any(IntentFilter.class));
|
|
||||||
verify(pref).setChecked(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReceiver_goingToAirplaneMode_shouldClearPreferenceSummary() {
|
public void testReceiver_goingToAirplaneMode_shouldClearPreferenceSummary() {
|
||||||
final ContentResolver cr = mock(ContentResolver.class);
|
final ContentResolver cr = mock(ContentResolver.class);
|
||||||
|
Reference in New Issue
Block a user