SeekBarPreference: update the persisted value when the SeekBar changes value
The idea here is that whenever the user changes one of the parameter
values via the SeekBar control, it is reflected immediately by eSpeak.
This is similar to how e.g. the brightness preference UI works.
However, instead of updating every time the value changes while the
slider is being moved, it is updated once the touch interaction is
finished.
Also, if the user Cancels or exits the dialog with the back button,
the old setting value is restored.
SeekBarPreference: don't make the value text selectable
The ADT lint warnings flagged the value text as "consider making
the text selectable", however if you do TalkBack will cause the
first character to be read every time the seekbar changes poisiton
(due to the text being updated via the setText method).
This is annoying and confusing, so textIsSelectable is set to false
to supress the lint warning.
Indian languages: change [t.#].
lang=hy,: Change letter names.
Add voice variant Klatt4 with a sawtooth voicing waveform.
Fix problem in 1.47.10a with 'kr' and 'pr' in some languages.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@357 d46cf337-b52f-0410-862d-fd96e6ae7743
SpeechSynthesis.java: expose the different voice options from eSpeak
This makes the following changes:
1. setVoice takes a Voice object instead of a language string.
This is to make the API cleaner and allows SpeechSynthesis
to pass the correct parameter (identifier for SetVoiceByName,
or name for SetVoiceByProperties) to espeak.
2. The espeak_SetVoiceByName API is also exposed to support passing
the voice variant to use.
3. The age parameter has been re-added with the constants:
* SpeechSynthesis.AGE_ANY
* SpeechSynthesis.AGE_YOUNG
* SpeechSynthesis.AGE_OLD
based on the behaviour of the eSpeak voice selection algorithm.
NOTE: Due to the way that voice selection is implemented in eSpeak,
if variant is specified, the age and gender cannot be specified and
vice versa.
SpeechSynthesis.java: further simplify the setVoice method.
This renames `setVoiceByProperties` to the more consise `setVoice`
and removes the name parameter as this is not used -- the voice is
set by the language and gender parameters only.
SpeechSynthesis.java: Simplify the SetVoiceByProperties parameters.
The `age` parameter is not useful as eSpeak does not use this when
selecting voices. This is always set to `0` by TtsService.java.
The `variant` parameter is not used to select the actual voice
variant (from the `!v` directory) but to select the n^th matching
voice from the list of matching voices. This is always set to
select the first matching voice by TtsService.java.