Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@dkwingsmt
Copy link
Contributor

@dkwingsmt dkwingsmt commented Mar 3, 2022

Before this PR, duplicate down events are regularized by ignoring the latter events.

For example, native KeyA down, KeyA down will result in Flutter KeyA down, (empty).

This PR changes so that the latter events are kept, and, for regularization purposes, preceded by synthesized up events. The example above will now result in Flutter KeyA down, (KeyA up) KeyA down. This change is similar to #30488, but for a different reason.

This fixes the macOS part (which is the last part) of flutter/flutter#82673. When using this Vietnamese IME and typing "laf", the f key down event will be converted to many events, including a key down event with keyCode 0 (KeyA) and character "à". However, if the typing is so fast that the A key is not released when the F key is pressed (which happens a lot), the current strategy will take the forged KeyA down event as a duplicate down event, ignore it by returning true, and this event will not be passed to the text input plugin.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See testing the engine for instructions on
    writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Copy link
Contributor

@gspencergoog gspencergoog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

32384589-a60f0e74-c078-11e7-9bc1-e5b5287aea9d

@dkwingsmt dkwingsmt added affects: text input waiting for tree to go green This PR is approved and tested, but waiting for the tree to be green to land. labels Mar 4, 2022
@fluttergithubbot fluttergithubbot merged commit 756344a into flutter:main Mar 4, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Mar 4, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

affects: text input platform-macos waiting for tree to go green This PR is approved and tested, but waiting for the tree to be green to land.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants