Conditionally remove settings that aren't required on the tablet.
Bug: 2985267
Changes not done : SD card related stuff, as we need some way still
to figure out if there is a real SD card in the device.
Change-Id: I21c41f18ebe6c050981918481a7f6d69f04b65d0
diff --git a/src/com/android/settings/SoundSettings.java b/src/com/android/settings/SoundSettings.java
index c5dad82..8582f17 100644
--- a/src/com/android/settings/SoundSettings.java
+++ b/src/com/android/settings/SoundSettings.java
@@ -49,12 +49,21 @@
private static final String KEY_SOUND_SETTINGS = "sound_settings";
private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
private static final String KEY_LOCK_SOUNDS = "lock_sounds";
+ private static final String KEY_RINGTONE = "ringtone";
+ private static final String KEY_NOTIFICATION_SOUND = "notification_sound";
+ private static final String KEY_CATEGORY_CALLS = "category_calls";
+ private static final String KEY_CATEGORY_NOTIFICATION = "category_notification";
private static final String VALUE_VIBRATE_NEVER = "never";
private static final String VALUE_VIBRATE_ALWAYS = "always";
private static final String VALUE_VIBRATE_ONLY_SILENT = "silent";
private static final String VALUE_VIBRATE_UNLESS_SILENT = "notsilent";
+ private static final String[] NEED_VOICE_CAPABILITY = {
+ KEY_RINGTONE, KEY_DTMF_TONE, KEY_CATEGORY_CALLS,
+ KEY_EMERGENCY_TONE
+ };
+
private CheckBoxPreference mSilent;
/*
@@ -145,6 +154,14 @@
}
}
+ if (!Utils.isVoiceCapable(getActivity())) {
+ for (String prefKey : NEED_VOICE_CAPABILITY) {
+ Preference pref = findPreference(prefKey);
+ if (pref != null) {
+ getPreferenceScreen().removePreference(pref);
+ }
+ }
+ }
}
@Override