X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2FDictionaryActivity.java;h=6dc95c68dc95b2c9bdba2d18f4c9d418201718a9;hb=131ee153d1b5af73d423882c5852cb1061e75e03;hp=d2b4a923623fa4534151baca54ce25655b220604;hpb=e3a434becb9cc5e8bfa912a5241b66b6a24b65d1;p=Dictionary.git diff --git a/src/com/hughes/android/dictionary/DictionaryActivity.java b/src/com/hughes/android/dictionary/DictionaryActivity.java index d2b4a92..6dc95c6 100644 --- a/src/com/hughes/android/dictionary/DictionaryActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryActivity.java @@ -1075,6 +1075,37 @@ public class DictionaryActivity extends ActionBarActivity { } }); } + if (row instanceof PairEntry.Row && ttsReady) { + final List pairs = ((PairEntry.Row)row).getEntry().pairs; + final MenuItem speakLeft = menu.add(R.string.speak_left); + speakLeft.setOnMenuItemClickListener(new android.view.MenuItem.OnMenuItemClickListener() { + @Override + public boolean onMenuItemClick(android.view.MenuItem item) { + int idx = index.swapPairEntries ? 1 : 0; + updateTTSLanguage(idx); + String text = ""; + for (Pair p : pairs) text += p.get(idx); + text = text.replaceAll("\\{[^{}]*\\}", "").replace("{", "").replace("}", ""); + textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, + new HashMap()); + return false; + } + }); + final MenuItem speakRight = menu.add(R.string.speak_right); + speakRight.setOnMenuItemClickListener(new android.view.MenuItem.OnMenuItemClickListener() { + @Override + public boolean onMenuItemClick(android.view.MenuItem item) { + int idx = index.swapPairEntries ? 0 : 1; + updateTTSLanguage(idx); + String text = ""; + for (Pair p : pairs) text += p.get(idx); + text = text.replaceAll("\\{[^{}]*\\}", "").replace("{", "").replace("}", ""); + textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, + new HashMap()); + return false; + } + }); + } } private void jumpToTextFromHyperLink(