Skip to content

Commit 842e570

Browse files
committed
fix: image gallery safe area
1 parent 851237c commit 842e570

File tree

3 files changed

+31
-35
lines changed

3 files changed

+31
-35
lines changed

package/src/components/ImageGallery/components/ImageGalleryFooter.tsx

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -154,28 +154,26 @@ export const ImageGalleryFooterWithContext = <
154154
};
155155

156156
return (
157-
<SafeAreaView
157+
<Animated.View
158158
accessibilityLabel={accessibilityLabel}
159159
onLayout={(event) => setHeight(event.nativeEvent.layout.height)}
160160
pointerEvents={'box-none'}
161161
style={styles.wrapper}
162162
>
163-
<Animated.View style={footerStyle}>
164-
<View style={[{ backgroundColor: white }, container]}>
165-
{photo.type === FileTypes.Video ? (
166-
videoControlElement ? (
167-
videoControlElement({ duration, onPlayPause, paused, progress, videoRef })
168-
) : (
169-
<ImageGalleryVideoControl
170-
duration={duration}
171-
onPlayPause={onPlayPause}
172-
paused={paused}
173-
progress={progress}
174-
videoRef={videoRef}
175-
/>
176-
)
177-
) : null}
178-
</View>
163+
<SafeAreaView style={[{ backgroundColor: white }, container, footerStyle]}>
164+
{photo.type === FileTypes.Video ? (
165+
videoControlElement ? (
166+
videoControlElement({ duration, onPlayPause, paused, progress, videoRef })
167+
) : (
168+
<ImageGalleryVideoControl
169+
duration={duration}
170+
onPlayPause={onPlayPause}
171+
paused={paused}
172+
progress={progress}
173+
videoRef={videoRef}
174+
/>
175+
)
176+
) : null}
179177
<View style={[styles.innerContainer, { backgroundColor: white }, innerContainer]}>
180178
{leftElement ? (
181179
leftElement({ openGridView, photo, share, shareMenuOpen })
@@ -204,8 +202,8 @@ export const ImageGalleryFooterWithContext = <
204202
</TouchableOpacity>
205203
)}
206204
</View>
207-
</Animated.View>
208-
</SafeAreaView>
205+
</SafeAreaView>
206+
</Animated.View>
209207
);
210208
};
211209

package/src/components/ImageGallery/components/ImageGalleryHeader.tsx

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
import React, { useMemo, useState } from 'react';
22
import { Pressable, SafeAreaView, StyleSheet, Text, View, ViewStyle } from 'react-native';
3-
import Animated, {
4-
Extrapolation,
5-
interpolate,
6-
SharedValue,
7-
useAnimatedStyle,
8-
} from 'react-native-reanimated';
3+
import { Extrapolation, interpolate, SharedValue, useAnimatedStyle } from 'react-native-reanimated';
94

105
import { useOverlayContext } from '../../../contexts/overlayContext/OverlayContext';
116
import { useTheme } from '../../../contexts/themeContext/ThemeContext';
@@ -58,6 +53,7 @@ export const ImageGalleryHeader = <
5853
centerContainer,
5954
container,
6055
dateText,
56+
innerContainer,
6157
leftContainer,
6258
rightContainer,
6359
usernameText,
@@ -93,12 +89,12 @@ export const ImageGalleryHeader = <
9389
};
9490

9591
return (
96-
<SafeAreaView
92+
<View
9793
onLayout={(event) => setHeight(event.nativeEvent.layout.height)}
9894
pointerEvents={'box-none'}
9995
>
100-
<Animated.View style={headerStyle}>
101-
<View style={[styles.container, { backgroundColor: white }, container]}>
96+
<SafeAreaView style={[{ backgroundColor: white }, container, headerStyle]}>
97+
<View style={[styles.innerContainer, innerContainer]}>
10298
{leftElement ? (
10399
leftElement({ hideOverlay, photo })
104100
) : (
@@ -124,8 +120,8 @@ export const ImageGalleryHeader = <
124120
<View style={[styles.rightContainer, rightContainer]} />
125121
)}
126122
</View>
127-
</Animated.View>
128-
</SafeAreaView>
123+
</SafeAreaView>
124+
</View>
129125
);
130126
};
131127

@@ -137,16 +133,16 @@ const styles = StyleSheet.create({
137133
flex: 1,
138134
justifyContent: 'center',
139135
},
140-
container: {
141-
flexDirection: 'row',
142-
justifyContent: 'space-between',
143-
paddingVertical: 8,
144-
},
145136
date: {
146137
fontSize: 12,
147138
fontWeight: '500',
148139
opacity: 0.5,
149140
},
141+
innerContainer: {
142+
flexDirection: 'row',
143+
justifyContent: 'space-between',
144+
paddingVertical: 8,
145+
},
150146
leftContainer: {
151147
flex: 1,
152148
justifyContent: 'center',

package/src/contexts/themeContext/utils/theme.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,7 @@ export type Theme = {
226226
centerContainer: ViewStyle;
227227
container: ViewStyle;
228228
dateText: TextStyle;
229+
innerContainer: ViewStyle;
229230
leftContainer: ViewStyle;
230231
rightContainer: ViewStyle;
231232
usernameText: TextStyle;
@@ -983,6 +984,7 @@ export const defaultTheme: Theme = {
983984
centerContainer: {},
984985
container: {},
985986
dateText: {},
987+
innerContainer: {},
986988
leftContainer: {},
987989
rightContainer: {},
988990
usernameText: {},

0 commit comments

Comments
 (0)