fix: missing scroll animation when switching between inputs in `KeyboardAwareScrollView` (#1484)
## 📜 Description Fixed a problem with missing animation in `KeyboardAwareScrollView` when switching between fields. ## 💡 Motivation and Context The problem was because `removeGhostPadding` performed a synchronous `scrollTo` (which overrides the effect of prior `scrollTo` call with animation). The fix is to skip the call when it's not necessary. Additionally I tried to fix flakiness of `KeyboardAwareScrollViewStickyView` tests by increasing an interval between shared value update and call a function on a UI thread. Closes https://github.com/kirillzyusko/react-native-keyboard-controller/issues/1483 ## 📢 Changelog <!-- High level overview of important changes --> <!-- For example: fixed status bar manipulation; added new types declarations; --> <!-- If your changes don't affect one of platform/language below - then remove this platform/language --> ### JS - wrap `runOnUI` in `requestAnimationFrame`; - call `removeGhostPadding` only when keyboard is hidden (`e.height === 0`) - cover the regression with unit tests; ## 🤔 How Has This Been Tested? Tested on iPhone 17 Pro (iOS 26.2) + e2e tests. ## 📸 Screenshots (if appropriate): |Before|After| |-------|-----| |<video src="https://github.com/user-attachments/assets/8016df4e-ae1d-4c86-8d6a-35dfbec5c7d0">|<video src="https://github.com/user-attachments/assets/8ab020d4-2d87-4ada-bd66-387de7aef30f">| ## 📝 Checklist - [x] CI successfully passed - [x] I added new mocks and corresponding unit-tests if library API was changed
K
Kirill Zyusko committed
bd482534d37f7b889bb7a92a1a1528db262dde13
Parent: 7c6cbfb
Committed by GitHub <noreply@github.com>
on 6/3/2026, 2:01:14 PM