-
-
Notifications
You must be signed in to change notification settings - Fork 129
Description
Describe the bug
The KeyboardAwareScrollView component exhibits jerky/stuttering behavior when the keyboard is shown in version 1.19.1 for view with space between layout (common case for displaying forms). The same implementation works smoothly in version 1.19.0, indicating a regression introduced in the latest patch version.
When focusing an input field wrapped in KeyboardAwareScrollView, the view animation stutters noticeably as the keyboard appears, creating a poor user experience.
Code snippet
import { Text, TextInput, View } from "react-native";
import { KeyboardAwareScrollView } from "react-native-keyboard-controller";
export default function KeyboardTestScreen() {
return (
<KeyboardAwareScrollView
contentContainerStyle={{
flex: 1,
paddingHorizontal: 17,
paddingTop: 18,
}}
showsVerticalScrollIndicator={false}
keyboardShouldPersistTaps="handled"
>
<View style={{ flex: 1, justifyContent: "space-between" }}>
<View style={{ gap: 8 }}>
<Text>Autofocused Input</Text>
<TextInput
autoFocus
style={{
height: 40,
borderColor: "gray",
borderWidth: 1,
paddingHorizontal: 8,
}}
/>
</View>
<View
style={{
backgroundColor: "black",
height: 40,
borderRadius: 8,
justifyContent: "center",
alignItems: "center",
}}
>
<Text style={{ color: "white" }}>Button</Text>
</View>
</View>
</KeyboardAwareScrollView>
);
}Repo for reproducing
Just a fresh expo app with code snippet above.
To Reproduce
- Install react-native-keyboard-controller v1.19.1
- Implement a KeyboardAwareScrollView with input fields while having buttons in the bottom
- Focus on any input field to trigger the keyboard
- Observe the jerky animation as the keyboard appears
Expected behavior
The view should animate smoothly when the keyboard appears, matching the behavior observed in version 1.19.0.
Screenshots
Simulator.Screen.Recording.-.iPhone.17.Pro.-.2025-10-17.at.13.01.09.mov
Smartphone (please complete the following information):
- Desktop OS: MacOS Mohave
- Device: iPhone 15 Pro Max
- OS: 26.0.1
- RN version: 0.81.4
- RN architecture: new
- JS engine: Hermes
- Library version: 1.19.1
Additional Context
- The issue is not present in v1.19.0
- Downgrading to v1.19.0 resolves the issue
Thank you for your awesome work!