ionic-team / ionic-team/capacitor-keyboard
[iOS 26] keyboardDidHide fires before keyboardWillHide
- Dominant language
- TypeScript
- Stars
- 3
- Forks
- 21
- PR merge metrics
- No merged PRs in 30d
Description
## 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, where`keyboardWillHide` always precedes `keyboardDidHide`.
### Expected Behavior
The plugin should always emit events in the logical order: `keyboardDidHide` after `keyboardWillHide`.
### Code Reproduction
Minimal reproduction available [here](https://github.com/darondel-yoobic/capacitor-keyboard-issue).
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
/
Contributor guide
Assessment
This issue has not been assessed yet.