Skip to content

MacOS text input plugin should be properly incorporated into the view hierarchy and the responder chain #100590

Open

Description

@LongCatIsLooong

Today the macOS text input plugin is a subclass of NSTextView which must be in the view hierarchy for it to properly interact with the OS input system.

Moreover the macOS text input plugin calls multiple API that are only supposed to be invoked by the system (-[NSTextInputContext active], -[NSTextInputContext deactive], -[NSResponder becomeFirstResponder], etc.). Setting up the view hierarchy could potentially remove these incorrect API usages.

This issue covers the long-term strategic fix for #100272, which was fixed by a short-term workaround.

Activity

  1. added
    a: text inputEntering text in a text field or keyboard related problems
    engineflutter/engine related. See also e: labels.
    platform-macosBuilding on or for macOS specifically
    on Mar 22, 2022
  2. changed the title [-]MacOS text input plugin should be properly incorporated into the view hierarchy and responder chain[/-] [+]MacOS text input plugin should be properly incorporated into the view hierarchy and the responder chain[/+] on Mar 22, 2022
  3. added
    P3Issues that are less important to the Flutter project
    on Mar 28, 2022
  4. raju-muliyashiya commented on Nov 13, 2025

    @raju-muliyashiya

    Maybe Android’s camera writes the image rotated with an EXIF orientation flag (e.g. “Rotate 90°”), rather than physically rotating pixels. as a result getResizedImagePath() method uses the raw image dimensions before rotation

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Issues that are less important to the Flutter projecta: text inputEntering text in a text field or keyboard related problemsengineflutter/engine related. See also e: labels.platform-macosBuilding on or for macOS specificallyteam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions