Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cf5f1004 authored by Walter Jang's avatar Walter Jang
Browse files

Hide sort order and name format prefs for CJK locales

The donottranslate_config.xml were moved over from Contacts

Bug 26632200

Change-Id: If06af8e14094efc740f958a2c10ac407851e5f5e
parent 78432961
Loading
Loading
Loading
Loading
+27 −13
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.os.Bundle;
import android.preference.ListPreference;
import android.preference.Preference;
@@ -45,19 +46,7 @@ public class DisplayOptionsPreferenceFragment extends PreferenceFragment {
        // Load the preferences from an XML resource
        addPreferencesFromResource(R.xml.preference_display_options);

        // Remove "Default account" setting if no writable accounts.
        final AccountTypeManager accountTypeManager = AccountTypeManager.getInstance(getContext());
        final List<AccountWithDataSet> accounts = accountTypeManager.getAccounts(
                /* contactWritableOnly */ true);
        if (accounts.isEmpty()) {
            final PreferenceScreen preferenceScreen = getPreferenceScreen();
            preferenceScreen.removePreference((ListPreference) findPreference("accounts"));
        }

        // STOPSHIP Show this option when 1) metadata sync is enabled and 2) at least one
        // focus google account.
        final PreferenceScreen preferenceScreen = getPreferenceScreen();
        preferenceScreen.removePreference((ListPreference) findPreference("contactMetadata"));
        removeUnsupportedPreferences();

        // Set build version of Contacts App.
        final PackageManager manager = getActivity().getPackageManager();
@@ -75,6 +64,31 @@ public class DisplayOptionsPreferenceFragment extends PreferenceFragment {
        licensePreference.setIntent(new Intent(getActivity(), LicenseActivity.class));
    }

    private void removeUnsupportedPreferences() {
        // Disable sort order for CJK locales where it is not supported
        final Resources resources = getResources();
        if (!resources.getBoolean(R.bool.config_sort_order_user_changeable)) {
            getPreferenceScreen().removePreference(findPreference("sortOrder"));
        }

        // Disable display order for CJK locales as well
        if (!resources.getBoolean(R.bool.config_display_order_user_changeable)) {
            getPreferenceScreen().removePreference(findPreference("displayOrder"));
        }

        // Remove the "Default account" setting if there aren't any writable accounts
        final AccountTypeManager accountTypeManager = AccountTypeManager.getInstance(getContext());
        final List<AccountWithDataSet> accounts = accountTypeManager.getAccounts(
                /* contactWritableOnly */ true);
        if (accounts.isEmpty()) {
            getPreferenceScreen().removePreference(findPreference("accounts"));
        }

        // STOPSHIP Show this option when 1) metadata sync is enabled
        // and 2) there is at least one focus google account
        getPreferenceScreen().removePreference(findPreference("contactMetadata"));
    }

    @Override
    public Context getContext() {
        return getActivity();