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

Commit de1b5ae7 authored by Przemyslaw Szczepaniak's avatar Przemyslaw Szczepaniak
Browse files

Add (hidden) TTSEngines#isLocaleSetToDefaultForEngine method.

TTSEngines#isLocaleSetToDefaultForEngine allows the Settings application
to distinguish if the TTS engine locale is blank (set to follow the device
locale) or if it's set to the same value as the device locale.

Change-Id: I462584547d69c21cde4ac317c8a3b3bbc1680cae
parent c8d31963
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -306,6 +306,24 @@ public class TtsEngines {
        return locale;
    }

    /**
     * True if a given TTS engine uses the default phone locale as a default locale. Attempts to
     * read the value from {@link Settings.Secure#TTS_DEFAULT_LOCALE}, failing which the
     * old style value from {@link Settings.Secure#TTS_DEFAULT_LANG} is read. If
     * both these values are empty, this methods returns true.
     *
     * @param engineName the engine to return the locale for.
     */
    public boolean isLocaleSetToDefaultForEngine(String engineName) {
        return (TextUtils.isEmpty(parseEnginePrefFromList(
                    getString(mContext.getContentResolver(), Settings.Secure.TTS_DEFAULT_LOCALE),
                    engineName)) &&
                    TextUtils.isEmpty(
                        Settings.Secure.getString(mContext.getContentResolver(),
                        Settings.Secure.TTS_DEFAULT_LANG)));
    }


    /**
     * Parses a locale preference value delimited by {@link #LOCALE_DELIMITER}.
     * Varies from {@link String#split} in that it will always return an array