Skip to content

[iOS 26] keyboardDidHide fires before keyboardWillHide #32

@darondel-yoobic

Description

@darondel-yoobic

Bug Report

Plugin(s)

@capacitor/keyboard

Capacitor Version

💊   Capacitor Doctor  💊 

Latest Dependencies:

  @capacitor/cli: 7.4.4
  @capacitor/core: 7.4.4
  @capacitor/android: 7.4.4
  @capacitor/ios: 7.4.4

Installed Dependencies:

  @capacitor/android: not installed
  @capacitor/cli: 7.4.4
  @capacitor/core: 7.4.4
  @capacitor/ios: 7.4.4

Platform(s)

iOS 26

Current Behavior

On iOS 26, when the keyboard hides instantly (e.g., user taps outside an input), keyboardDidHide is fired before keyboardWillHide.
This differs from expected UIKit behavior and from iOS 18, wherekeyboardWillHide always precedes keyboardDidHide.

Expected Behavior

The plugin should always emit events in the logical order: keyboardDidHide after keyboardWillHide.

Code Reproduction

Minimal reproduction available here.
Steps:

  1. Launch the app on iOS (simulator or device).
  2. Tap the input → keyboard appears.
  3. Tap outside the input → keyboard hides instantly.
  4. Observe the on-screen logs.

On iOS 18, the keyboard hides with an animation, and the event order is correct.
On iOS 26, the hide is instant, and the order is reversed.

Other Technical Details

/

Additional Context

/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions