feat(ai-scribe): Fix the English locale file `(intl_en.arb)` is missing all three AI Scribe keys
feat(ai-scribe): Fix async function declared without proper return type annotation. feat(ai-scribe): Fix Async operations not properly awaited. feat(ai-scribe): Fix inconsistent capitalization between button labels. feat(ai-scribe): Fix GenerateAITextFailure check will never match. feat(ai-scribe): Fix consider validating text input for predefined actions. feat(ai-scribe): Using a subshell for directory isolation. feat(ai-scribe): Fix verify the mock usage or document intent. feat(ai-scribe): Using a more conventional import for Offset. feat(ai-scribe): Adding error handling for consistency feat(ai-scribe): Remove `fromJson` and `toJson` of AIResponse feat(ai-scribe): Using constants for role values. feat(ai-scribe): Using a more specific import. feat(ai-scribe): Using Timer for cleaner lifecycle management feat(ai-scribe): Adding error handling to fromMap() for consistency. feat(ai-scribe): Disposing the ValueNotifier feat(ai-scribe): Redundant null check after assignment feat(ai-scribe): Fix calling `registerSelectionChangeListener` multiple times may be inefficient. feat(ai-scribe): Safer type handling for JavaScript callback args feat(ai-scribe): Fix async callbacks not awaited in switch statement. feat(ai-scribe): Fix binding lifecycle mismatch for GetAIScribeConfigInteractor feat(ai-scribe): Fix ai prompts feat(ai-scribe): Fix unawaited async call to `_setupSelectionListener` feat(ai-scribe): Fix switch cases use top-origin coordinates while `PositionedDirectional(bottom:)`` expects bottom-origin coordinates. feat(ai-scribe): Adding error handling for selection listener setup.
This commit is contained in:
+8
-9
@@ -35,7 +35,7 @@ extension HandleAiScribeInComposerExtension on ComposerController {
|
||||
}
|
||||
}
|
||||
|
||||
void insertTextInEditor(String text) async {
|
||||
Future<void> insertTextInEditor(String text) async {
|
||||
try {
|
||||
final htmlContent = StringConvert.convertTextContentToHtmlContent(text);
|
||||
|
||||
@@ -87,18 +87,17 @@ extension HandleAiScribeInComposerExtension on ComposerController {
|
||||
// Ensure we only insert at cursor position by collapsing selection before inserting
|
||||
Future<void> onInsertTextCallback(String text) async {
|
||||
await collapseSelection();
|
||||
|
||||
insertTextInEditor(text);
|
||||
await insertTextInEditor(text);
|
||||
}
|
||||
|
||||
// If there is a selection, it will replace the selection, else it will replace everything
|
||||
void onReplaceTextCallback(String text) {
|
||||
Future<void> onReplaceTextCallback(String text) async {
|
||||
final selection = editorTextSelection.value?.selectedText;
|
||||
if (selection == null || selection.isEmpty) {
|
||||
clearTextInEditor();
|
||||
}
|
||||
|
||||
insertTextInEditor(text);
|
||||
await insertTextInEditor(text);
|
||||
}
|
||||
|
||||
Future<void> openAIAssistantModal(Offset? position, Size? size) async {
|
||||
@@ -116,16 +115,16 @@ extension HandleAiScribeInComposerExtension on ComposerController {
|
||||
);
|
||||
}
|
||||
|
||||
void handleAiScribeSuggestionAction(
|
||||
Future<void> handleAiScribeSuggestionAction(
|
||||
AiScribeSuggestionActions action,
|
||||
String suggestionText,
|
||||
) {
|
||||
) async {
|
||||
switch (action) {
|
||||
case AiScribeSuggestionActions.replace:
|
||||
onReplaceTextCallback(suggestionText);
|
||||
await onReplaceTextCallback(suggestionText);
|
||||
break;
|
||||
case AiScribeSuggestionActions.insert:
|
||||
onInsertTextCallback(suggestionText);
|
||||
await onInsertTextCallback(suggestionText);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user