From 137ba49bc5abcd36daf08ee3c446cc1ff010e488 Mon Sep 17 00:00:00 2001 From: Brad Ebinger Date: Wed, 29 Aug 2018 16:08:29 -0700 Subject: [PATCH] Only make a subset of Call Barring options visible per carrier Some carriers do not support changing the password and deactivating all call barring options using the "Call Barring" UI. These options aren't available over the UT interface, so the options are always grayed out. Adds KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL and KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL keys to the CarrierConfigManager to handle these two cases. Test: disable carrier configs manually and check UI Bug: 80510612 Merged-In: I1a5d26c528f4c3187e87686e3efeea2d411e99e7 Change-Id: I0190f15107ae1828ba98902ca10ed4128fb71dbf --- .../telephony/CarrierConfigManager.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index 742f059ab4e66..e7f49b447c198 100644 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -109,6 +109,28 @@ public class CarrierConfigManager { public static final String KEY_CALL_BARRING_VISIBILITY_BOOL = "call_barring_visibility_bool"; + /** + * Flag indicating whether or not changing the call barring password via the "Call Barring" + * settings menu is supported. If true, the option will be visible in the "Call + * Barring" settings menu. If false, the option will not be visible. + * + * Enabled by default. + * @hide + */ + public static final String KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL = + "call_barring_supports_password_change_bool"; + + /** + * Flag indicating whether or not deactivating all call barring features via the "Call Barring" + * settings menu is supported. If true, the option will be visible in the "Call + * Barring" settings menu. If false, the option will not be visible. + * + * Enabled by default. + * @hide + */ + public static final String KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL = + "call_barring_supports_deactivate_all_bool"; + /** * Flag indicating whether the Phone app should ignore EVENT_SIM_NETWORK_LOCKED * events from the Sim. @@ -2085,6 +2107,8 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_CARRIER_VOLTE_PROVISIONED_BOOL, false); sDefaults.putBoolean(KEY_CALL_BARRING_VISIBILITY_BOOL, false); + sDefaults.putBoolean(KEY_CALL_BARRING_SUPPORTS_PASSWORD_CHANGE_BOOL, true); + sDefaults.putBoolean(KEY_CALL_BARRING_SUPPORTS_DEACTIVATE_ALL_BOOL, true); sDefaults.putBoolean(KEY_CALL_FORWARDING_VISIBILITY_BOOL, true); sDefaults.putBoolean(KEY_ADDITIONAL_SETTINGS_CALLER_ID_VISIBILITY_BOOL, true); sDefaults.putBoolean(KEY_ADDITIONAL_SETTINGS_CALL_WAITING_VISIBILITY_BOOL, true);