Fix KeyboardAvoidingView not recognizing the keyboard is dismissed after it was opened on Android #53448
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary:
Fix a problem on Android where
KeyboardAvoidingView
does not recognize that the keyboard is dismissed after it was opened.Root Cause:
KeyboardAvoidingView
subscribes to keyboard change events (show, hide). However, it binds the wrong event handler forkeyboardDidHide
. This causes_updateBottomIfNecessary
to wrongfully calculatestate.bottom
because it relies on whetherthis._keyboardEvent
isnull
or not.Changelog:
[ANDROID] [FIXED] - Fix a problem on Android where
KeyboardAvoidingView
does not recognize that the keyboard is dismissed after it was opened.Test Plan:
KeyboardAvoidingView
KeyboardAvoidingView
behavior
which is normalKeyboardAvoidingView
shows a gap on the bottom of the screen as "avoiding view". But this is incorrect behaviour since the keyboard is already dismissed.