Autocomplete Failure in React Native TextInput with multiline={true} Prop (TextInput)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 127k
- Forks
- 25.3k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 4
Description
Description
In React Native's TextInput component, when the multiline={true} prop is set,
it interferes with the autocomplete functionality,
preventing the keyboard from detecting text from incoming messages.
This issue becomes particularly noticeable when implementing OTP (One-Time Password) functionalities.
The expected behavior is for the keyboard to automatically recognize text from incoming messages, and when tapping on the top row of suggested text, it should paste that text into the corresponding TextInput field.
However, due to the multiline={true} setting,
this functionality is disrupted, leading to an inconsistent user experience.
Steps to reproduce
Set multiline={true} in a TextInput component.
Trigger a scenario where autocomplete text is expected to be suggested by the keyboard (e.g., OTP input).
Observe that the keyboard fails to detect and suggest incoming message text.
Attempt to tap on the top row of suggested text, noting that it does not paste into the TextInput field as expected.
React Native Version
0.70.12
Affected Platforms
Runtime - Android, Runtime - iOS
Output of npx react-native info
System:
OS: macOS 14.4
CPU: (10) arm64 Apple M2 Pro
Memory: 70.38 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 18.17.0 - ~/.nvm/versions/node/v18.17.0/bin/node
Yarn: 1.22.21 - /opt/homebrew/bin/yarn
npm: 9.6.7 - ~/.nvm/versions/node/v18.17.0/bin/npm
Watchman: Not Found
Managers:
CocoaPods: 1.15.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 23.2, iOS 17.2, macOS 14.2, tvOS 17.2, visionOS 1.0, watchOS 10.2
Android SDK:
API Levels: 28, 29, 30, 31, 32, 33, 34
Build Tools: 30.0.2, 30.0.3, 31.0.0, 33.0.2, 34.0.0
System Images: android-30 | Intel x86_64 Atom, android-34 | Google APIs ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: 2023.2 AI-232.10227.8.2321.11479570
Xcode: 15.2/15C500b - /usr/bin/xcodebuild
Languages:
Java: 21.0.2 - /opt/homebrew/opt/openjdk/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.1.0 => 18.1.0
react-native: 0.70.12 => 0.70.12
react-native-macos: Not Found
npmGlobalPackages:
*react-native*: Not Found
Stacktrace or Logs
No stack trace as this is not crash failure issue
Reproducer
https://snack.expo.dev/@buddhanag/multiline-autocomplete-keyboard?platform=web
Screenshots and Videos
This screen-recording is being done separately the iOS video is from a real device connected to react native metro server for debugging the issue.
this video explains when we use multiline the keyboard autocomplete text disappears.
https://github.com/facebook/react-native/assets/31861172/8c91b5c3-fe2c-423a-b8d8-ee8df6a3f113
https://github.com/facebook/react-native/assets/31861172/efff5b3c-967b-4264-bb24-bf5d5da5ccea
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by running the linked Snack reproducer with React Native 0.70.12 on Android and iOS, then trace the TextInput multiline and autocomplete behavior in the relevant platform implementations. Done means incoming OTP text is suggested and can be inserted while multiline={true}; the issue names no source files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react-native
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100