Guard call setting security fix with flag.
This change ensures that the call options security fixes made in CdmaCallOptions and GsmUmtsCallOptions are guarded with the relevant flag.
Test: manual
Bug: 309655251
Change-Id: I6cba56bc3b947c7d1aa74c1a61c09b7f0392d4f7
diff --git a/src/com/android/phone/CdmaCallOptions.java b/src/com/android/phone/CdmaCallOptions.java
index e468c00..4f94b58 100644
--- a/src/com/android/phone/CdmaCallOptions.java
+++ b/src/com/android/phone/CdmaCallOptions.java
@@ -32,6 +32,7 @@
import android.view.MenuItem;
import com.android.internal.telephony.PhoneConstants;
+import com.android.internal.telephony.flags.Flags;
public class CdmaCallOptions extends TimeConsumingPreferenceActivity {
private static final String LOG_TAG = "CdmaCallOptions";
@@ -85,7 +86,7 @@
UserManager userManager = (UserManager) getSystemService(Context.USER_SERVICE);
boolean mobileNetworkConfigsRestricted =
userManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS);
- if (mobileNetworkConfigsRestricted) {
+ if (Flags.ensureAccessToCallSettingsIsRestricted() && mobileNetworkConfigsRestricted) {
Log.i(LOG_TAG, "Mobile network configs are restricted, hiding CDMA call forwarding "
+ "and CDMA call waiting options.");
}
@@ -93,7 +94,8 @@
mCallForwardingPref = getPreferenceScreen().findPreference(CALL_FORWARDING_KEY);
if (carrierConfig != null && carrierConfig.getBoolean(
CarrierConfigManager.KEY_CALL_FORWARDING_VISIBILITY_BOOL) &&
- !mobileNetworkConfigsRestricted) {
+ (!mobileNetworkConfigsRestricted ||
+ !Flags.ensureAccessToCallSettingsIsRestricted())) {
mCallForwardingPref.setIntent(
subInfoHelper.getIntent(CdmaCallForwardOptions.class));
} else {
@@ -105,7 +107,8 @@
.findPreference(CALL_WAITING_KEY);
if (carrierConfig == null || !carrierConfig.getBoolean(
CarrierConfigManager.KEY_ADDITIONAL_SETTINGS_CALL_WAITING_VISIBILITY_BOOL) ||
- mobileNetworkConfigsRestricted) {
+ (Flags.ensureAccessToCallSettingsIsRestricted() &&
+ mobileNetworkConfigsRestricted)) {
getPreferenceScreen().removePreference(mCallWaitingPref);
mCallWaitingPref = null;
}