Commit Graph

6 Commits

Author SHA1 Message Date
agra
8ac7b5a5d5 keyboard: fix interactive dismiss race conditions, rewrite example
Fix several race conditions in the iOS interactive dismiss flow:
- Don't skip keyboard close notifications during pan tracking, which
  left Dart unaware the keyboard was dismissed
- Guard resignFirstResponder with generation check so reopened keyboards
  aren't killed by stale dismiss completions
- Block pan tracking from starting during an in-flight dismiss animation
- Always reset keyboard view bounds when the keyboard opens, not just
  when the dismiss animator is still running
- Handle duration=0 keyboard notifications by snapping immediately
- Gate adaptive learning debug output behind kDebugMode

Rewrite the example as a chat UI demonstrating ListenableBuilder,
scroll freeze during interactive dismiss, and proper bottom inset
handling with max(keyboardHeight, safeBottom).

Modernize example Android project from v1 to v2 embedding with
current AGP/Gradle versions.
2026-04-16 18:34:05 +03:00
agra
2777b5f746 0.2.0 2025-02-02 15:05:11 +02:00
alex
a6f3d63d68 +bezier 2020-05-25 09:45:52 +01:00
alex
94ee74840a zzz 2020-05-04 10:58:19 +01:00
agrapine
7b63d460d6 expanded includes 2019-10-17 14:27:53 +01:00
agrapine
810d060d44 red pill 2019-08-07 15:37:44 +01:00