Auto Play Interactive Translator

pull/1384/head
Matthew 1 year ago
parent f7753a0477
commit 5a5f18bd84

@ -2514,6 +2514,16 @@
"type": "text",
"placeholders": {}
},
"interactiveTranslatorAutoPlaySliderHeader": "Auto Play Interactive Translator",
"@interactiveTranslatorAutoPlaySliderHeader": {
"type": "text",
"placeholders": {}
},
"interactiveTranslatorAutoPlayDesc": "Launches the interactive translator without asking.",
"@interactiveTranslatorAutoPlayDesc": {
"type": "text",
"placeholders": {}
},
"notYetSet": "Not yet set",
"@notYetSet": {
"type": "text",
@ -3964,4 +3974,4 @@
"roomDataMissing": "Some data may be missing from rooms in which you are not a member.",
"updatePhoneOS": "You may need to update your device's OS version.",
"wordsPerMinute": "Words per minute"
}
}

@ -3099,6 +3099,17 @@
"type": "text",
"placeholders": {}
},
"interactiveTranslatorAutoPlaySliderHeader": "Traductora interactiva de reproducción automática",
"interactiveTranslatorAutoPlay": "Traductora interactiva de reproducción automática",
"@interactiveTranslatorAutoPlay": {
"type": "text",
"placeholders": {}
},
"interactiveTranslatorAutoPlayDesc": "Inicia el traductor interactivo sin preguntar.",
"@interactiveTranslatorAutoPlayDesc": {
"type": "text",
"placeholders": {}
},
"grammarAssistance": "Asistencia gramatical",
"@grammarAssistance": {
"type": "text",
@ -4652,4 +4663,4 @@
"conversationBotDiscussionZone_discussionTriggerReactionKeyLabel": "Reacción al envío del aviso de debate",
"studentAnalyticsNotAvailable": "Datos de los estudiantes no disponibles actualmente",
"roomDataMissing": "Es posible que falten algunos datos de las salas de las que no es miembro."
}
}

@ -513,6 +513,11 @@ class Choreographer {
chatController.room,
);
bool get itAutoPlayEnabled => pangeaController.permissionsController.isToolEnabled(
ToolSetting.itAutoPlay,
chatController.room,
);
bool get definitionsEnabled =>
pangeaController.permissionsController.isToolEnabled(
ToolSetting.definitions,

@ -191,6 +191,11 @@ class IgcController {
const int firstMatchIndex = 0;
final PangeaMatch match = igcTextData!.matches[firstMatchIndex];
if (match.isITStart && choreographer.itAutoPlayEnabled && igcTextData != null) {
choreographer.onITStart(igcTextData!.matches[firstMatchIndex]);
return;
}
OverlayUtil.showPositionedCard(
context: context,
cardToShow: SpanCard(

@ -126,6 +126,7 @@ class UserController extends BaseController {
final bool? trial = migratedProfileInfo(MatrixProfile.activatedFreeTrial);
final bool? interactiveTranslator =
migratedProfileInfo(MatrixProfile.interactiveTranslator);
final bool? itAutoPlay = migratedProfileInfo(MatrixProfile.itAutoPlay);
final bool? interactiveGrammar =
migratedProfileInfo(MatrixProfile.interactiveGrammar);
final bool? immersionMode =
@ -144,6 +145,7 @@ class UserController extends BaseController {
autoPlayMessages: autoPlay,
activatedFreeTrial: trial,
interactiveTranslator: interactiveTranslator,
itAutoPlay: itAutoPlay,
interactiveGrammar: interactiveGrammar,
immersionMode: immersionMode,
definitions: definitions,
@ -225,6 +227,7 @@ class UserController extends BaseController {
bool? autoPlayMessages,
bool? activatedFreeTrial,
bool? interactiveTranslator,
bool? itAutoPlay,
bool? interactiveGrammar,
bool? immersionMode,
bool? definitions,
@ -262,6 +265,12 @@ class UserController extends BaseController {
interactiveTranslator,
);
}
if (itAutoPlay != null) {
await _pangeaController.pStoreService.save(
MatrixProfile.itAutoPlay.title,
itAutoPlay,
);
}
if (interactiveGrammar != null) {
await _pangeaController.pStoreService.save(
MatrixProfile.interactiveGrammar.title,

@ -295,6 +295,7 @@ class PangeaRoomRules {
enum ToolSetting {
interactiveTranslator,
itAutoPlay,
interactiveGrammar,
immersionMode,
definitions,
@ -306,6 +307,8 @@ extension SettingCopy on ToolSetting {
switch (this) {
case ToolSetting.interactiveTranslator:
return L10n.of(context)!.interactiveTranslatorSliderHeader;
case ToolSetting.itAutoPlay:
return L10n.of(context)!.interactiveTranslatorAutoPlaySliderHeader;
case ToolSetting.interactiveGrammar:
return L10n.of(context)!.interactiveGrammarSliderHeader;
case ToolSetting.immersionMode:
@ -324,6 +327,8 @@ extension SettingCopy on ToolSetting {
return L10n.of(context)!.itToggleDescription;
case ToolSetting.interactiveGrammar:
return L10n.of(context)!.igcToggleDescription;
case ToolSetting.itAutoPlay:
return L10n.of(context)!.interactiveTranslatorAutoPlayDesc;
case ToolSetting.immersionMode:
return L10n.of(context)!.toggleImmersionModeDesc;
case ToolSetting.definitions:

@ -56,6 +56,7 @@ enum MatrixProfile {
autoPlayMessages,
activatedFreeTrial,
interactiveTranslator,
itAutoPlay,
interactiveGrammar,
immersionMode,
definitions,
@ -81,6 +82,8 @@ extension MatrixProfileExtension on MatrixProfile {
return PLocalKey.activatedTrialKey;
case MatrixProfile.interactiveTranslator:
return ToolSetting.interactiveTranslator.toString();
case MatrixProfile.itAutoPlay:
return ToolSetting.itAutoPlay.toString();
case MatrixProfile.interactiveGrammar:
return ToolSetting.interactiveGrammar.toString();
case MatrixProfile.immersionMode:

@ -96,15 +96,24 @@ class PangeaTextController extends TextEditingController {
: null;
if (cardToShow != null) {
OverlayUtil.showPositionedCard(
context: context,
cardSize: matchIndex != -1 &&
choreographer.igc.igcTextData!.matches[matchIndex].isITStart
? const Size(350, 220)
: const Size(350, 400),
cardToShow: cardToShow,
transformTargetId: choreographer.inputTransformTargetKey,
);
if (
choreographer.itAutoPlayEnabled &&
choreographer.igc.igcTextData!.matches[matchIndex].isITStart
) {
choreographer.onITStart(
choreographer.igc.igcTextData!.matches[matchIndex],
);
} else {
OverlayUtil.showPositionedCard(
context: context,
cardSize: matchIndex != -1 &&
choreographer.igc.igcTextData!.matches[matchIndex].isITStart
? const Size(350, 220)
: const Size(350, 400),
cardToShow: cardToShow,
transformTargetId: choreographer.inputTransformTargetKey,
);
}
}
}

@ -51,6 +51,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -1430,6 +1432,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -2340,6 +2344,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -3240,6 +3246,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -4140,6 +4148,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -5040,6 +5050,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -5935,6 +5947,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -6787,6 +6801,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -7687,6 +7703,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -8579,6 +8597,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -9422,6 +9442,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -10273,6 +10295,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -11173,6 +11197,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -12073,6 +12099,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -12973,6 +13001,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -13865,6 +13895,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -14716,6 +14748,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -15616,6 +15650,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -16513,6 +16549,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -17403,6 +17441,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -18817,6 +18857,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -19727,6 +19769,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -20627,6 +20671,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -21523,6 +21569,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -22412,6 +22460,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -23312,6 +23362,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -24212,6 +24264,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -25112,6 +25166,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -26012,6 +26068,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -26912,6 +26970,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -27812,6 +27872,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -28712,6 +28774,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -29608,6 +29672,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -30481,6 +30547,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -31381,6 +31449,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -32273,6 +32343,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -33124,6 +33196,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -34024,6 +34098,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -34924,6 +35000,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -35820,6 +35898,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -36689,6 +36769,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -37589,6 +37671,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -38485,6 +38569,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -39366,6 +39452,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -40217,6 +40305,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -41109,6 +41199,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",
@ -41960,6 +42052,8 @@
"interactiveTranslatorNotAllowedDesc",
"interactiveTranslatorAllowedDesc",
"interactiveTranslatorRequiredDesc",
"interactiveTranslatorAutoPlaySliderHeader",
"interactiveTranslatorAutoPlayDesc",
"notYetSet",
"multiLingualClass",
"classAnalytics",

Loading…
Cancel
Save