Repository navigation
Description
During an IME composition, pressing backspace affects the precompose text, but not the IME's candidates.
Target app: a text field
Step:
- Use macOS's Chinese Pinyin IME
- Press a few keys (in the GIF I pressed a few
W). It looks correct for now. - Press backspace.
- Expected: The candidate list is shortened accordingly.
- Actual: The candidate list does not change.
Further proof:
- Press a few letter keys again.
- Actual: The new keys are appended to the candidate list before backspace presses.
- Select a candidate using digit key 1.
- Actual: The output text is the unshortened candidate.
Both showing that the IME did not receive the backspace key at all.
Version:
Details
[✓] Flutter (Channel master, 2.6.0-12.0.pre.355, on macOS 11.6 20G165 darwin-x64, locale en)
• Flutter version 2.6.0-12.0.pre.355 at /Users/tongmu/dev/flutter
• Upstream repository [email protected]:flutter/flutter.git
• Framework revision ccc8261495 (30 minutes ago), 2021-10-14 15:33:05 -0500
• Engine revision 8a18794648
• Dart version 2.15.0 (build 2.15.0-217.0.dev)
[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at /Users/tongmu/Library/Android/sdk
✗ cmdline-tools component is missing
Run path/to/sdkmanager --install "cmdline-tools;latest"
See https://developer.android.com/studio/command-line for more details.
✗ Android license status unknown.
Run flutter doctor --android-licenses to accept the SDK licenses.
See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[!] Xcode - develop for iOS and macOS (Xcode 13.0)
• Xcode at /Applications/Xcode.app/Contents/Developer
! CocoaPods 1.9.1 out of date (1.10.0 is recommended).
CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
Without CocoaPods, plugins will not work on iOS or macOS.
For more info, see https://flutter.dev/platform-plugins
To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 3.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
[✓] VS Code (version 1.61.0)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.27.0
[✓] Connected device (2 available)
• macOS (desktop) • macos • darwin-x64 • macOS 11.6 20G165 darwin-x64
• Chrome (web) • chrome • web-javascript • Google Chrome 94.0.4606.81
! Doctor found issues in 2 categories.

Activity
dkwingsmt commentedon Oct 14, 2021
We might want to test it on other platforms.
cc @cbracken
dkwingsmt commentedon Oct 14, 2021
Update: It does not react to left/right keys either (try pressing left during composing then insert a different key.) In fact, doing this for multiple times results in the follow assertion error, crashing the entire keyboard system:
[-][macOS] IME fails to react to backspace[/-][+][macOS] IME fails to react to non-text keys[/+]cbracken commentedon Oct 18, 2021
/cc @justinmc I believe you have an existing bug for navigating the candidates list. (#85328) I'm also not sure this isn't a regression -- at least on macOS. I'd have to do some bisecting; not labelling as such for now since I'm not sure.
cbracken commentedon Oct 19, 2021
I'm going to test this out momentarily to see if I can determine whether this is a desktop stable blocker. I'm making the assumption now that it is.
cbracken commentedon Oct 19, 2021
Marking as regression since backspace in the composing region used to work, other than the known previous regression that clearing out the final character in the composing region would fail, documented in #78061.
justinmc commentedon Oct 19, 2021
Assigning myself while I investigate this.
Related: #92060
Maybe related: #85328
justinmc commentedon Oct 19, 2021
I confirmed that this is not happening on Windows, but I filed a more subtle bug I noticed there, unrelated to this one: #92132
justinmc commentedon Oct 21, 2021
This will probably require solving #30725 to solve this the right way. See discussion over there.
justinmc commentedon Oct 21, 2021
I believe this is also a problem on iOS when a physical keyboard is used. See #30725 (comment).
justinmc commentedon Oct 26, 2021
I'm going to close this as a duplicate. The underlying problem seems to be the same as #78061 and #85328. One of the solutions outlined here will need to be implemented to fix this.
github-actions commentedon Nov 10, 2021
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.