Update search for mobile network settings
This CL make all mobile related preferences support: 1. If subId is manually set, check visibility by subId 2. If not, try find whether there is one active subId meets requirement. If so, isAvailable() will return true to enable search. Bug: 77276236 Test: RunSettingsRoboTests Change-Id: I24e2d2f5e882284ba8e997b844caee7722b6b07d
This commit is contained in:
@@ -40,7 +40,7 @@ import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
/**
|
||||
* Preference controller for "Mobile data"
|
||||
*/
|
||||
public class MobileDataPreferenceController extends TogglePreferenceController
|
||||
public class MobileDataPreferenceController extends TelephonyTogglePreferenceController
|
||||
implements LifecycleObserver, OnStart, OnStop {
|
||||
|
||||
private static final String DIALOG_TAG = "MobileDataDialog";
|
||||
@@ -50,7 +50,6 @@ public class MobileDataPreferenceController extends TogglePreferenceController
|
||||
private SubscriptionManager mSubscriptionManager;
|
||||
private DataContentObserver mDataContentObserver;
|
||||
private FragmentManager mFragmentManager;
|
||||
private int mSubId;
|
||||
@VisibleForTesting
|
||||
int mDialogType;
|
||||
@VisibleForTesting
|
||||
@@ -58,15 +57,13 @@ public class MobileDataPreferenceController extends TogglePreferenceController
|
||||
|
||||
public MobileDataPreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||
mSubscriptionManager = context.getSystemService(SubscriptionManager.class);
|
||||
mDataContentObserver = new DataContentObserver(new Handler(Looper.getMainLooper()));
|
||||
mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
||||
public int getAvailabilityStatus(int subId) {
|
||||
return subId != SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
||||
? AVAILABLE
|
||||
: CONDITIONALLY_UNAVAILABLE;
|
||||
}
|
||||
@@ -74,7 +71,7 @@ public class MobileDataPreferenceController extends TogglePreferenceController
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
mPreference = (SwitchPreference) screen.findPreference(getPreferenceKey());
|
||||
mPreference = screen.findPreference(getPreferenceKey());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user