@@ -183,17 +183,8 @@ public void onActivityCreated(@Nullable Bundle savedInstanceState) {
183183 //inputText.setRawInputType(InputType.TYPE_CLASS_TEXT);
184184
185185 // setting of the selected languages
186- setFirstLanguage (global .getFirstTextLanguage (true ), new Translator .GeneralListener () {
187- @ Override
188- public void onSuccess () {
189- setSecondLanguage (global .getSecondTextLanguage (true ), null );
190- }
191-
192- @ Override
193- public void onFailure (int [] reasons , long value ) {
194- //todo: gestire errore
195- }
196- });
186+ setDisplayedFirstLanguage (global .getFirstTextLanguage (true ));
187+ setDisplayedSecondLanguage (global .getSecondTextLanguage (true ));
197188
198189 View .OnClickListener walkieTalkieButtonListener = new View .OnClickListener () {
199190 @ Override
@@ -230,15 +221,15 @@ public void onTranslatedText(String textToTranslate, String text, long resultID,
230221
231222 @ Override
232223 public void onFailure (int [] reasons , long value ) {
233-
224+ activateTranslationButton ();
234225 }
235226 };
236227 translateButton .setOnClickListener (new View .OnClickListener () {
237228 @ Override
238229 public void onClick (View view ) {
239230 String text = inputText .getText ().toString ();
240231
241- if (text .length () <= 0 ){ //test code
232+ if (text .length () <= 0 ){ //test code todo: remove before release
242233 text = "Also unlike 2014, there aren’t nearly as many loopholes. You can’t just buy a 150-watt incandescent or a three-way bulb — the ban covers any normal bulb that generates less than 45 lumens per watt, which pretty much rules out both incandescent and halogen tech in their entirety." ;
243234 inputText .setText (text );
244235 }
@@ -247,7 +238,7 @@ public void onClick(View view) {
247238 CustomLocale firstLanguage = global .getFirstTextLanguage (true );
248239 CustomLocale secondLanguage = global .getSecondTextLanguage (true );
249240 //we deactivate translate button
250- deactivateTranslationButton ();
241+ deactivateTranslationButton (); //todo: implement stop button instead of deactivation
251242 //we start the translation
252243 global .getTranslator ().translate (text , firstLanguage , secondLanguage , global .getBeamSize (), true );
253244 }
@@ -811,11 +802,11 @@ public void onItemClick(AdapterView<?> parent, View view, final int position, lo
811802 if (languages .contains ((CustomLocale ) listView .getItem (position ))) {
812803 switch (languageNumber ) {
813804 case 1 : {
814- setFirstLanguage ((CustomLocale ) listView .getItem (position ), null );
805+ setFirstLanguage ((CustomLocale ) listView .getItem (position ));
815806 break ;
816807 }
817808 case 2 : {
818- setSecondLanguage ((CustomLocale ) listView .getItem (position ), null );
809+ setSecondLanguage ((CustomLocale ) listView .getItem (position ));
819810 break ;
820811 }
821812 }
@@ -842,42 +833,50 @@ public void onStop() {
842833 global .getTranslator ().removeCallback (translateListener );
843834 }
844835
845- private void setFirstLanguage (CustomLocale language , @ Nullable Translator .GeneralListener listener ) {
836+ private void setFirstLanguage (CustomLocale language ) {
837+ deactivateTranslationButton ();
846838 // save firstLanguage selected
847839 global .setFirstTextLanguage (language , new Translator .GeneralListener () {
848840 @ Override
849841 public void onSuccess () {
850- // change language displayed
851- ((AnimatedTextView ) firstLanguageSelector .findViewById (R .id .firstLanguageName )).setText (language .getDisplayNameWithoutTTS (), false );
852- if (listener != null ) listener .onSuccess ();
853- }
854-
855- @ Override
856- public void onFailure (int [] reasons , long value ) {
857- //todo: gestire errore
842+ activateTranslationButton ();
858843 }
859844 });
845+ // change language displayed
846+ setDisplayedFirstLanguage (language );
860847 }
861848
862- private void setSecondLanguage (CustomLocale language , @ Nullable Translator .GeneralListener listener ) {
849+ private void setSecondLanguage (CustomLocale language ) {
850+ deactivateTranslationButton ();
863851 // save secondLanguage selected
864852 global .setSecondTextLanguage (language , new Translator .GeneralListener () {
865853 @ Override
866854 public void onSuccess () {
867- // change language displayed
868- ((AnimatedTextView ) secondLanguageSelector .findViewById (R .id .secondLanguageName )).setText (language .getDisplayNameWithoutTTS (), false );
869- if (listener != null ) listener .onSuccess ();
870- }
871-
872- @ Override
873- public void onFailure (int [] reasons , long value ) {
874- //todo: gestire errore
855+ activateTranslationButton ();
875856 }
876857 });
858+ // change language displayed
859+ setDisplayedSecondLanguage (language );
860+ }
861+
862+ private void setDisplayedFirstLanguage (CustomLocale language ){
863+ // change language displayed
864+ ((AnimatedTextView ) firstLanguageSelector .findViewById (R .id .firstLanguageName )).setText (language .getDisplayNameWithoutTTS (), false );
865+ }
866+
867+ private void setDisplayedSecondLanguage (CustomLocale language ){
868+ // change language displayed
869+ ((AnimatedTextView ) secondLanguageSelector .findViewById (R .id .secondLanguageName )).setText (language .getDisplayNameWithoutTTS (), false );
877870 }
878871
879872 private void switchLanguages (){
880- global .switchTextLanguages ();
873+ deactivateTranslationButton ();
874+ global .switchTextLanguages (new Translator .GeneralListener () {
875+ @ Override
876+ public void onSuccess () {
877+ activateTranslationButton ();
878+ }
879+ });
881880 // change language displayed
882881 ((AnimatedTextView ) firstLanguageSelector .findViewById (R .id .firstLanguageName )).setText (global .getFirstTextLanguage (true ).getDisplayNameWithoutTTS (), false );
883882 ((AnimatedTextView ) secondLanguageSelector .findViewById (R .id .secondLanguageName )).setText (global .getSecondTextLanguage (true ).getDisplayNameWithoutTTS (), false );
0 commit comments