Merge "Auto update summary for mobile network preference."
This commit is contained in:
committed by
Android (Google) Code Review
commit
43a2878215
@@ -32,11 +32,11 @@ import com.android.settings.wrapper.RestrictedLockUtilsWrapper;
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
||||
import com.android.settingslib.core.lifecycle.events.OnResume;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
|
||||
public class MobileNetworkPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin, LifecycleObserver, OnResume, OnPause {
|
||||
implements PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop {
|
||||
|
||||
private static final String KEY_MOBILE_NETWORK_SETTINGS = "mobile_network_settings";
|
||||
|
||||
@@ -71,10 +71,8 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
if (isAvailable()) {
|
||||
mPreference = screen.findPreference(getPreferenceKey());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPreferenceKey() {
|
||||
@@ -82,15 +80,13 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
public void onStart() {
|
||||
if (isAvailable()) {
|
||||
if (mPhoneStateListener == null) {
|
||||
mPhoneStateListener = new PhoneStateListener() {
|
||||
@Override
|
||||
public void onServiceStateChanged(ServiceState serviceState) {
|
||||
if (mPreference != null) {
|
||||
mPreference.setSummary(mTelephonyManager.getNetworkOperatorName());
|
||||
}
|
||||
updateState(mPreference);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -99,9 +95,14 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
public void onStop() {
|
||||
if (mPhoneStateListener != null) {
|
||||
mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
return mTelephonyManager.getNetworkOperatorName();
|
||||
}
|
||||
}
|
||||
|
@@ -15,11 +15,9 @@
|
||||
*/
|
||||
package com.android.settings.network;
|
||||
|
||||
import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
|
||||
import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
|
||||
|
||||
import static android.arch.lifecycle.Lifecycle.Event.ON_START;
|
||||
import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.spy;
|
||||
@@ -110,11 +108,11 @@ public class MobileNetworkPreferenceControllerTest {
|
||||
mLifecycle.addObserver(mController);
|
||||
doReturn(true).when(mController).isAvailable();
|
||||
|
||||
mLifecycle.handleLifecycleEvent(ON_RESUME);
|
||||
mLifecycle.handleLifecycleEvent(ON_START);
|
||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||
PhoneStateListener.LISTEN_SERVICE_STATE);
|
||||
|
||||
mLifecycle.handleLifecycleEvent(ON_PAUSE);
|
||||
mLifecycle.handleLifecycleEvent(ON_STOP);
|
||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||
PhoneStateListener.LISTEN_NONE);
|
||||
}
|
||||
@@ -131,8 +129,8 @@ public class MobileNetworkPreferenceControllerTest {
|
||||
|
||||
// Display pref and go through lifecycle to set up listener.
|
||||
mController.displayPreference(mScreen);
|
||||
mLifecycle.handleLifecycleEvent(ON_RESUME);
|
||||
verify(mController).onResume();
|
||||
mLifecycle.handleLifecycleEvent(ON_START);
|
||||
verify(mController).onStart();
|
||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||
PhoneStateListener.LISTEN_SERVICE_STATE);
|
||||
|
||||
|
Reference in New Issue
Block a user