Skip to content

Commit

Permalink
fix: backquote key will cause crash when using France IME
Browse files Browse the repository at this point in the history
  • Loading branch information
LucasXu0 committed Sep 13, 2024
1 parent bc591cc commit c3dcb6e
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,20 @@ Future<void> onInsert(

final textInserted = insertion.textInserted;

// character shortcut events
final execution = await executeCharacterShortcutEvent(
editorState,
textInserted,
characterShortcutEvents,
);
// In France, the backtick key is used to toggle a character style.
// We should prevent the execution of character shortcut events when the
// composing range is not collapsed.
if (insertion.composing.isCollapsed) {
// execute character shortcut events
final execution = await executeCharacterShortcutEvent(
editorState,
textInserted,
characterShortcutEvents,
);

if (execution) {
return;
if (execution) {
return;
}
}

var selection = editorState.selection;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@ import 'package:flutter/services.dart';
Future<void> onNonTextUpdate(
TextEditingDeltaNonTextUpdate nonTextUpdate,
EditorState editorState,
List<CharacterShortcutEvent> characterShortcutEvents,
) async {
AppFlowyEditorLog.input.debug('onNonTextUpdate: $nonTextUpdate');

// update the selection on Windows
//
// when typing characters with CJK IME on Windows, a non-text update is sent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ class KeyboardServiceWidgetState extends State<KeyboardServiceWidget>
onNonTextUpdate: (nonTextUpdate) async => await onNonTextUpdate(
nonTextUpdate,
editorState,
widget.characterShortcutEvents,
),
onPerformAction: (action) async => await onPerformAction(
action,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ void main() {
composing: TextRange(start: 0, end: 3),
),
EditorState.blank(),
[],
);
});
});
Expand Down

0 comments on commit c3dcb6e

Please sign in to comment.