Make TTS language setting track system language.

TTS engine default locale is set independently from the system locale.
If TTS engine default locale is not set, it defaults to the system locale.
If user decides to set TTS locale, ability to default to the current system
locale is lost (until device is wiped).

This change makes settings wipe the TTS engine default locale value if user
selects language that is system language. This allows TTS to track system
language if user changes it.

If system language is not available in TTS, language field is set to
"language not selected" value.

This change require a small change in framework/base to make previously
private method public (TtsEngines.getDefaultLocale).

+ Selected language is displayed in language preference summary (matches
all other language preferences)
+ Removing and then adding "language" and 'install languages' preferences
looks glitchy, not they are disabled (grayed out) if unavailable.

Bug: 8613986
Change-Id: Ic4bde97ef7406adb64cc03efbe660275360ba3af
2 files changed