@@ -85,6 +85,7 @@ public enum RTranslatorMode {
8585 private Handler mainHandler ;
8686 private static Handler mHandler = new Handler ();
8787 private final Object lock = new Object ();
88+ private boolean useTatoeba ;
8889
8990 @ Override
9091 public void onCreate () {
@@ -98,6 +99,8 @@ public void onCreate() {
9899 //initializeBluetoothCommunicator();
99100 getMicSensitivity ();
100101 createNotificationChannel ();
102+ SharedPreferences sharedPreferences = getSharedPreferences ("default" , Context .MODE_PRIVATE );
103+ useTatoeba = sharedPreferences .getBoolean ("useTatoeba" , false );
101104 }
102105
103106 public void initializeTranslator (Translator .GeneralListener initListener ){
@@ -438,11 +441,7 @@ public void setFirstLanguage(CustomLocale language, @Nullable Translator.General
438441 SharedPreferences .Editor editor = sharedPreferences .edit ();
439442 editor .putString ("firstLanguage" , language .getCode ());
440443 editor .apply ();
441- if (translator .getMode () == Translator .MOZILLA ) {
442- translator .loadMozillaModels (language , getSecondLanguage (true ), RTranslatorMode .WALKIE_TALKIE_MODE , listener );
443- }else {
444- if (listener != null ) listener .onSuccess ();
445- }
444+ loadLanguagesResources (language , getSecondLanguage (true ), RTranslatorMode .WALKIE_TALKIE_MODE , listener );
446445 }
447446
448447 public void setSecondLanguage (CustomLocale language , @ Nullable Translator .GeneralListener listener ) {
@@ -451,11 +450,7 @@ public void setSecondLanguage(CustomLocale language, @Nullable Translator.Genera
451450 SharedPreferences .Editor editor = sharedPreferences .edit ();
452451 editor .putString ("secondLanguage" , language .getCode ());
453452 editor .apply ();
454- if (translator .getMode () == Translator .MOZILLA ) {
455- translator .loadMozillaModels (getFirstLanguage (true ), language , RTranslatorMode .WALKIE_TALKIE_MODE , listener );
456- }else {
457- if (listener != null ) listener .onSuccess ();
458- }
453+ loadLanguagesResources (getFirstLanguage (true ), language , RTranslatorMode .WALKIE_TALKIE_MODE , listener );
459454 }
460455
461456 public void setFirstTextLanguage (CustomLocale language , @ Nullable Translator .GeneralListener listener ) {
@@ -464,11 +459,7 @@ public void setFirstTextLanguage(CustomLocale language, @Nullable Translator.Gen
464459 SharedPreferences .Editor editor = sharedPreferences .edit ();
465460 editor .putString ("firstTextLanguage" , language .getCode ());
466461 editor .apply ();
467- if (translator .getMode () == Translator .MOZILLA ) {
468- translator .loadMozillaModels (language , getSecondTextLanguage (true ), RTranslatorMode .TEXT_TRANSLATION_MODE , listener );
469- }else {
470- if (listener != null ) listener .onSuccess ();
471- }
462+ loadLanguagesResources (language , getSecondTextLanguage (true ), RTranslatorMode .TEXT_TRANSLATION_MODE , listener );
472463 }
473464
474465 public void setSecondTextLanguage (CustomLocale language , @ Nullable Translator .GeneralListener listener ) {
@@ -478,19 +469,15 @@ public void setSecondTextLanguage(CustomLocale language, @Nullable Translator.Ge
478469 SharedPreferences .Editor editor = sharedPreferences .edit ();
479470 editor .putString ("secondTextLanguage" , language .getCode ());
480471 editor .apply ();
481- if (translator .getMode () == Translator .MOZILLA ) {
482- translator .loadMozillaModels (getFirstTextLanguage (true ), language , RTranslatorMode .TEXT_TRANSLATION_MODE , listener );
483- }else {
484- if (listener != null ) listener .onSuccess ();
485- }
472+ loadLanguagesResources (getFirstTextLanguage (true ), language , RTranslatorMode .TEXT_TRANSLATION_MODE , listener );
486473 }
487474
488- public void switchTextLanguages (){
475+ public void switchTextLanguages () {
489476 CustomLocale firstLanguage = getFirstTextLanguage (true );
490477 CustomLocale secondLanguage = getSecondTextLanguage (true );
491478 this .firstTextLanguage = secondLanguage ;
492479 this .secondTextLanguage = firstLanguage ;
493- if ( translator . getMode () == Translator . MOZILLA ) translator . loadMozillaModels (secondLanguage , firstLanguage , RTranslatorMode .TEXT_TRANSLATION_MODE , null );
480+ loadLanguagesResources (secondLanguage , firstLanguage , RTranslatorMode .TEXT_TRANSLATION_MODE , null );
494481 SharedPreferences sharedPreferences = this .getSharedPreferences ("default" , Context .MODE_PRIVATE );
495482 SharedPreferences .Editor editor = sharedPreferences .edit ();
496483 editor .putString ("firstTextLanguage" , this .firstTextLanguage .getCode ());
@@ -579,6 +566,18 @@ public void setBeamSize(int value) {
579566 editor .apply ();
580567 }
581568
569+ public boolean isUseTatoeba (){
570+ return useTatoeba ;
571+ }
572+
573+ public void setUseTatoeba (boolean useTatoeba ) {
574+ this .useTatoeba = useTatoeba ;
575+ final SharedPreferences sharedPreferences = this .getSharedPreferences ("default" , Context .MODE_PRIVATE );
576+ SharedPreferences .Editor editor = sharedPreferences .edit ();
577+ editor .putBoolean ("useTatoeba" , useTatoeba );
578+ editor .apply ();
579+ }
580+
582581 public String getName () {
583582 if (name .length () == 0 ) {
584583 final SharedPreferences sharedPreferences = this .getSharedPreferences ("default" , Context .MODE_PRIVATE );
@@ -594,7 +593,7 @@ public void setName(String savedName) {
594593 editor .putString ("name" , savedName );
595594 editor .apply ();
596595 if (getBluetoothCommunicator () != null ) {
597- getBluetoothCommunicator ().setName (savedName ); //si aggiorna il nome anche per il comunicator
596+ getBluetoothCommunicator ().setName (savedName ); //we update the name also for communicator
598597 }
599598 }
600599
@@ -718,5 +717,26 @@ public boolean isNetworkOnWifi() {
718717 return false ; // user turned off wifi
719718 }
720719 }
720+
721+ private void loadLanguagesResources (CustomLocale firstLanguage , CustomLocale secondLanguage , RTranslatorMode mode , Translator .GeneralListener listener ){
722+ if (isUseTatoeba ()) {
723+ translator .loadTatoeba (firstLanguage , secondLanguage , mode , new Translator .GeneralListener () {
724+ @ Override
725+ public void onSuccess () {
726+ if (translator .getMode () == Translator .MOZILLA ) {
727+ translator .loadMozillaModels (firstLanguage , secondLanguage , mode , listener );
728+ } else {
729+ if (listener != null ) listener .onSuccess ();
730+ }
731+ }
732+ });
733+ }else {
734+ if (translator .getMode () == Translator .MOZILLA ) {
735+ translator .loadMozillaModels (firstLanguage , secondLanguage , mode , listener );
736+ } else {
737+ if (listener != null ) listener .onSuccess ();
738+ }
739+ }
740+ }
721741}
722742
0 commit comments