You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[🐛] 🔥 KeyboardCompatibleView causes chat input and message list to float away upwards on input blur on iPhone 15 Pro Max iOS 18.2 physical device
#2876
Open
2 of 8 tasks
amamenko opened this issue
Jan 8, 2025
· 3 comments
Chat channel messages and chat input are sliding to the top and out of view after chat input is focused on and then blurred specifically on iPhone 15 Pro Max iOS 18.2 physical device. Adding the prop disableKeyboardCompatibleView to the <Channel /> component (import { Channel } from "stream-chat-expo";) fixes the issue but then keyboard hides input and needs additional configuration. Notably the custom StickyHeader on the MessageList component stays right where it is.
I have two completely separate and different chat components in my application and the same behavior occurs for the user on both components regardless of customization - again, disabling the KeyboardCompatibleView fixes the floating away issue.
Steps to reproduce
Steps to reproduce the behavior:
Enter chat channel with message list and chat input on iPhone 15 Pro Max iOS 18.2 physical device.
Focus on chat input so that native keyboard is shown.
Remove focus (blur) chat input so that keyboard is dismissed.
Chat input and message list float away upwards and out of sight.
Expected behavior
Chat input and chat view/chat message list should not slide away on input blur.
Project Related Information
Customization
Click To Expand
Wrapping the InboxStackNavigator I have the following:
info Fetching system and libraries information...
(node:54174) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
(Use `node --trace-warnings ...` to show where the warning was created)
System:
OS: macOS 15.0.1
CPU: (8) arm64 Apple M2
Memory: 118.19 MB / 8.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 20.10.0
path: ~/.nvm/versions/node/v20.10.0/bin/node
Yarn:
version: 1.22.19
path: ~/.nvm/versions/node/v16.17.0/bin/yarn
npm:
version: 10.2.3
path: ~/.nvm/versions/node/v20.10.0/bin/npm
Watchman: Not Found
Managers:
CocoaPods:
version: 1.15.2
path: /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 24.2
- iOS 18.2
- macOS 15.2
- tvOS 18.2
- visionOS 2.2
- watchOS 11.2
Android SDK: Not Found
IDEs:
Android Studio: 2022.3 AI-223.8836.35.2231.11005911
Xcode:
version: 16.2/16C5032a
path: /usr/bin/xcodebuild
Languages:
Java:
version: 20.0.1
path: /opt/homebrew/opt/openjdk/bin/javac
Ruby:
version: 2.6.10
path: /usr/bin/ruby
npmPackages:
"@react-native-community/cli": Not Found
react:
installed: 18.2.0
wanted: 18.2.0
react-native:
installed: 0.74.5
wanted: 0.74.5
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: Not found
newArchEnabled: Not found
iOS:
hermesEnabled: true
newArchEnabled: false
info React Native v0.76.5 is now available (your project is running on v0.74.5).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.76.5
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.74.5
info For more info, check out "https://reactnative.dev/docs/upgrading?os=macos".
Platform that you're experiencing the issue on:
iOS
Android
iOS but have not tested behavior on Android
Android but have not tested behavior on iOS
Both
stream-chat-react-native version you're using that has this issue:
Hey @amamenko, is this very specific to this device(iPhone 15 pro max), and doesn't happen on any other platforms? Also, I suspect this has something to do with your customization and doesn't seem to happen with our default SDK components. You can easily confirm that by adding our components as is and with minimal customization. Maybe that would help us point out the problem.
I don't have a 15 pro max real device handy, but I am testing it on the iPhone 16 pro max simulator and don't see an issue just with your applied theme. Although i didn't add every component customization that you have, but can you relate to it?
@khushal87 This is probably a transient isolated issue. We were able to debug this today via an Expo ngrok tunnel on the basic ExpoMessaging example.
We are able to reproduce the bug when using some of the same custom components:
ScreenRecording_01-16-2025.18-35-22_1.MOV
While debugging, though, I saw the following warning in the terminal logs from the user's device:
[Reanimated] Reduced motion setting is enabled on this device. This warning is visible only in the development mode. Some animations will be disabled by default. You can override the behavior for individual animations, see https:/ /docs.swmansion.com/react-native-reanimated/docs/guides/troubleshooting#reduced-motion-setting-is-enabled-on-this-device.
Which was odd so I asked the user to disable the iOS reduced motion setting (they didn't even know they had it on.) Once turned off, the issue was mitigated and the chat was working normally again - no issues.
The weird thing is that when reduced motion was re-enabled, the chat was still working fine. Really weird issue. Probably just a physical device glitch of some sort.
Fixed running minimal example:
ScreenRecording_01-16-2025.20-59-20_1.MOV
Custom components were also working just fine again.
Issue
Chat channel messages and chat input are sliding to the top and out of view after chat input is focused on and then blurred specifically on iPhone 15 Pro Max iOS 18.2 physical device. Adding the prop
disableKeyboardCompatibleView
to the<Channel />
component (import { Channel } from "stream-chat-expo";
) fixes the issue but then keyboard hides input and needs additional configuration. Notably the customStickyHeader
on theMessageList
component stays right where it is.I have two completely separate and different chat components in my application and the same behavior occurs for the user on both components regardless of customization - again, disabling the KeyboardCompatibleView fixes the floating away issue.
Steps to reproduce
Steps to reproduce the behavior:
Expected behavior
Chat input and chat view/chat message list should not slide away on input blur.
Project Related Information
Customization
Click To Expand
Wrapping the
InboxStackNavigator
I have the following:Here's my
InboxChannelScreen
component:And here's my CustomMessageInput:
Offline support
Environment
Click To Expand
package.json
:react-native info
output:stream-chat-react-native
version you're using that has this issue:Additional context
Screenshots
Click To Expand
https://drive.google.com/file/d/1hX5LBB4VSAs40Kt-4V-USE6VeAZLlsRe/view?usp=drive_link
The text was updated successfully, but these errors were encountered: