Merge "[Settings] Hide some Preference entries when no mobile data support" into tm-dev
This commit is contained in:
@@ -28,6 +28,7 @@ import android.telephony.TelephonyManager;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.datausage.DataUsageUtils;
|
||||
import com.android.settings.datausage.lib.DataUsageLib;
|
||||
import com.android.settingslib.NetworkPolicyEditor;
|
||||
|
||||
@@ -63,6 +64,6 @@ public class BillingCyclePreferenceController extends BasePreferenceController {
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return AVAILABLE;
|
||||
return DataUsageUtils.hasMobileData(mContext) ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
|
||||
}
|
||||
}
|
||||
|
@@ -33,6 +33,7 @@ import androidx.preference.PreferenceScreen;
|
||||
import androidx.preference.SwitchPreference;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.settings.datausage.DataUsageUtils;
|
||||
import com.android.settings.network.MobileDataContentObserver;
|
||||
import com.android.settings.network.SubscriptionsChangeListener;
|
||||
|
||||
@@ -102,10 +103,16 @@ public class DataDuringCallsPreferenceController extends TelephonyTogglePreferen
|
||||
return true;
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
protected boolean hasMobileData() {
|
||||
return DataUsageUtils.hasMobileData(mContext);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus(int subId) {
|
||||
if (!SubscriptionManager.isValidSubscriptionId(subId)
|
||||
|| SubscriptionManager.getDefaultDataSubscriptionId() == subId) {
|
||||
|| SubscriptionManager.getDefaultDataSubscriptionId() == subId
|
||||
|| (!hasMobileData())) {
|
||||
return CONDITIONALLY_UNAVAILABLE;
|
||||
}
|
||||
return AVAILABLE;
|
||||
|
@@ -56,6 +56,7 @@ public class DataUsagePreferenceController extends TelephonyBasePreferenceContro
|
||||
@Override
|
||||
public int getAvailabilityStatus(int subId) {
|
||||
return (SubscriptionManager.isValidSubscriptionId(subId))
|
||||
&& DataUsageUtils.hasMobileData(mContext)
|
||||
? AVAILABLE
|
||||
: AVAILABLE_UNSEARCHABLE;
|
||||
}
|
||||
|
@@ -14,7 +14,7 @@
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package com.android.settings.network;
|
||||
package com.android.settings.network.telephony;
|
||||
|
||||
import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||
|
||||
@@ -74,7 +74,10 @@ public class DataDuringCallsPreferenceControllerTest {
|
||||
when(mTelephonyManager.createForSubscriptionId(anyInt())).thenReturn(mTelephonyManager);
|
||||
mSwitchPreference = new SwitchPreference(mContext);
|
||||
when(mPreferenceScreen.findPreference(PREF_KEY)).thenReturn(mSwitchPreference);
|
||||
mController = new DataDuringCallsPreferenceController(mContext, PREF_KEY);
|
||||
mController = new DataDuringCallsPreferenceController(mContext, PREF_KEY) {
|
||||
@Override
|
||||
protected boolean hasMobileData() { return true; }
|
||||
};
|
||||
mController.init(mLifecycle, SUB_ID_1);
|
||||
}
|
||||
|
Reference in New Issue
Block a user