Skip to content

Commit 536cdb5

Browse files
authored
Merge pull request #2500 from GetStream/develop
Next Release
2 parents d5b64fa + b3d2540 commit 536cdb5

File tree

7 files changed

+63
-164
lines changed

7 files changed

+63
-164
lines changed
+20-17
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,26 @@
1-
import { Stack } from "expo-router";
2-
import { GestureHandlerRootView } from "react-native-gesture-handler";
3-
import { ChatWrapper } from "../components/ChatWrapper";
4-
import { AppProvider } from "../context/AppContext";
5-
import { StyleSheet } from "react-native";
1+
import { Stack } from 'expo-router';
2+
import { GestureHandlerRootView } from 'react-native-gesture-handler';
3+
import { ChatWrapper } from '../components/ChatWrapper';
4+
import { AppProvider } from '../context/AppContext';
5+
import { StyleSheet } from 'react-native';
6+
import { SafeAreaProvider } from 'react-native-safe-area-context';
67

78
export default function Layout() {
8-
return (
9-
<GestureHandlerRootView style={styles.container}>
10-
<ChatWrapper>
11-
<AppProvider>
12-
<Stack />
13-
</AppProvider>
14-
</ChatWrapper>
15-
</GestureHandlerRootView>
16-
);
9+
return (
10+
<SafeAreaProvider>
11+
<GestureHandlerRootView style={styles.container}>
12+
<ChatWrapper>
13+
<AppProvider>
14+
<Stack />
15+
</AppProvider>
16+
</ChatWrapper>
17+
</GestureHandlerRootView>
18+
</SafeAreaProvider>
19+
);
1720
}
1821

1922
const styles = StyleSheet.create({
20-
container: {
21-
flex: 1,
22-
},
23+
container: {
24+
flex: 1,
25+
},
2326
});

examples/ExpoMessaging/app/channel/[cid]/index.tsx

+10-2
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
1-
import React, { useContext } from 'react';
1+
import React, { useContext, useEffect } from 'react';
22
import { SafeAreaView, View } from 'react-native';
3-
import { Channel, MessageInput, MessageList } from 'stream-chat-expo';
3+
import { useSafeAreaInsets } from 'react-native-safe-area-context';
4+
import { Channel, MessageInput, MessageList, useAttachmentPickerContext } from 'stream-chat-expo';
45
import { Stack, useRouter } from 'expo-router';
56
import { AuthProgressLoader } from '../../../components/AuthProgressLoader';
67
import { AppContext } from '../../../context/AppContext';
8+
import { useHeaderHeight } from '@react-navigation/elements';
79

810
export default function ChannelScreen() {
911
const router = useRouter();
1012
const { setThread, channel } = useContext(AppContext);
13+
const { setTopInset } = useAttachmentPickerContext();
14+
const headerHeight = useHeaderHeight();
15+
16+
useEffect(() => {
17+
setTopInset(headerHeight);
18+
}, [headerHeight, setTopInset]);
1119

1220
if (!channel) {
1321
return <AuthProgressLoader />;

examples/ExpoMessaging/components/ChatWrapper.tsx

+3-1
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,14 @@ import { useChatClient } from '../hooks/useChatClient';
44
import { AuthProgressLoader } from './AuthProgressLoader';
55
import { StreamChatGenerics } from '../types';
66
import { STREAM_API_KEY, user, userToken } from '../constants';
7+
import { useSafeAreaInsets } from 'react-native-safe-area-context';
78

89
const streami18n = new Streami18n({
910
language: 'en',
1011
});
1112

1213
export const ChatWrapper = ({ children }: PropsWithChildren<{}>) => {
14+
const { bottom } = useSafeAreaInsets();
1315
const chatClient = useChatClient({
1416
apiKey: STREAM_API_KEY,
1517
userData: user,
@@ -21,7 +23,7 @@ export const ChatWrapper = ({ children }: PropsWithChildren<{}>) => {
2123
}
2224

2325
return (
24-
<OverlayProvider<StreamChatGenerics> i18nInstance={streami18n}>
26+
<OverlayProvider<StreamChatGenerics> bottomInset={bottom} i18nInstance={streami18n}>
2527
<Chat client={chatClient} i18nInstance={streami18n} enableOfflineSupport={true}>
2628
{children}
2729
</Chat>

examples/ExpoMessaging/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
},
1212
"dependencies": {
1313
"@react-native-community/netinfo": "11.1.0",
14+
"@react-navigation/elements": "^1.3.30",
1415
"expo": "~50.0.14",
1516
"expo-av": "~13.10.5",
1617
"expo-clipboard": "~5.0.1",

0 commit comments

Comments
 (0)