summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrandon Maxwell <maxwelb@google.com>2016-09-26 15:09:51 -0700
committerBrandon Maxwell <maxwelb@google.com>2016-09-26 15:09:51 -0700
commit151b3ae6ada8c2f49ea191a0dfaee5b990afd890 (patch)
tree577eac7b439dbf4c310626a20c2e759e7b0639b0
parent5b66abc878ef718e8c7ed42ac8385bcf15bd4504 (diff)
Fixing display option for KO, JA, ZH
Names in Korean, Japanese, and Chinese are sorted and displayed by family name. Because of this, we shouldn't show the "Display Options" setting if the device is set for these locales. Other logic in the code will ignore the user set preferences anyway. Bug:30782253 Change-Id: I15ff7328609aea937940fc60c43e6f0c8dfdb5d2
-rw-r--r--src/com/android/dialer/settings/DialerSettingsActivity.java22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/com/android/dialer/settings/DialerSettingsActivity.java b/src/com/android/dialer/settings/DialerSettingsActivity.java
index fbdb4f9f5..dc1e21457 100644
--- a/src/com/android/dialer/settings/DialerSettingsActivity.java
+++ b/src/com/android/dialer/settings/DialerSettingsActivity.java
@@ -61,10 +61,12 @@ public class DialerSettingsActivity extends AppCompatPreferenceActivity {
@Override
public void onBuildHeaders(List<Header> target) {
- Header displayOptionsHeader = new Header();
- displayOptionsHeader.titleRes = R.string.display_options_title;
- displayOptionsHeader.fragment = DisplayOptionsSettingsFragment.class.getName();
- target.add(displayOptionsHeader);
+ if (showDisplayOptions()) {
+ Header displayOptionsHeader = new Header();
+ displayOptionsHeader.titleRes = R.string.display_options_title;
+ displayOptionsHeader.fragment = DisplayOptionsSettingsFragment.class.getName();
+ target.add(displayOptionsHeader);
+ }
Header soundSettingsHeader = new Header();
soundSettingsHeader.titleRes = R.string.sounds_and_vibration_title;
@@ -127,6 +129,18 @@ public class DialerSettingsActivity extends AppCompatPreferenceActivity {
}
}
+ /**
+ * Returns {@code true} or {@code false} based on whether the display options setting should be
+ * shown. For languages such as Chinese, Japanese, or Korean, display options aren't useful
+ * since contacts are sorted and displayed family name first by default.
+ *
+ * @return {@code true} if the display options should be shown, {@code false} otherwise.
+ */
+ private boolean showDisplayOptions() {
+ return getResources().getBoolean(R.bool.config_display_order_user_changeable)
+ && getResources().getBoolean(R.bool.config_sort_order_user_changeable);
+ }
+
@Override
public void onHeaderClick(Header header, int position) {
if (header.id == R.id.settings_header_sounds_and_vibration) {