singerdmx / flutter-quill

Rich text editor for Flutter
https://pub.dev/packages/flutter_quill
MIT License
2.6k stars 839 forks source link

Prevented indentation when the TAB key is pressed on a hardware keyboard during IME input #2375

Closed agata closed 1 week ago

agata commented 1 week ago

Description

During IME input, keyboard shortcuts should be disabled and processing should be delegated to the IME. Otherwise, shortcuts within the IME become disabled, and editor-side shortcuts, such as indentation, are executed even though input has not been finalized in the IME. This behavior does not occur in other native applications that use IME.

To retrieve the IME state, a property to obtain the IME input status has been added to RawEditorStateTextInputClientMixin, and its value is passed to EditorKeyboardShortcuts.

Steps to Reproduce: Press the TAB key while inputting with IME.

Expected Behavior: Moves within the IME candidate selection.

Current Behavior: EditorKeyboardShortcuts is executed, and the indentation process is triggered.

Related Issues

Type of Change

agata commented 1 week ago

I found an issue, so I will close this and resubmit it after making the necessary fixes.

EchoEllet commented 1 week ago

I found an issue,

Can you share the details of the issue when resubmitting?