aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/screens/moments/CameraScreen.tsx15
-rw-r--r--src/utils/camera.ts2
2 files changed, 6 insertions, 11 deletions
diff --git a/src/screens/moments/CameraScreen.tsx b/src/screens/moments/CameraScreen.tsx
index 1f38a0bf..739461a8 100644
--- a/src/screens/moments/CameraScreen.tsx
+++ b/src/screens/moments/CameraScreen.tsx
@@ -27,7 +27,6 @@ const CameraScreen: React.FC<CameraScreenProps> = ({route, navigation}) => {
const {screenType, selectedCategory} = route.params;
const cameraRef = useRef<RNCamera>(null);
const tabBarHeight = useBottomTabBarHeight();
- const focused = useIsFocused();
const [cameraType, setCameraType] = useState<keyof CameraType>('back');
const [flashMode, setFlashMode] = useState<keyof FlashMode>('off');
const [mostRecentPhoto, setMostRecentPhoto] = useState<string>('');
@@ -44,14 +43,6 @@ const CameraScreen: React.FC<CameraScreenProps> = ({route, navigation}) => {
}
};
- useEffect(() => {
- if (!focused) {
- setTimeout(() => {
- setShowCamera(false);
- }, 500);
- }
- }, [focused]);
-
useFocusEffect(
useCallback(() => {
navigation.dangerouslyGetParent()?.setOptions({
@@ -66,7 +57,11 @@ const CameraScreen: React.FC<CameraScreenProps> = ({route, navigation}) => {
setShowCamera(true);
- return () => setIsRecording(false);
+ return () => {
+ setTimeout(() => {
+ setShowCamera(false);
+ }, 500);
+ };
}, [navigation]),
);
diff --git a/src/utils/camera.ts b/src/utils/camera.ts
index ec2615de..c9dec292 100644
--- a/src/utils/camera.ts
+++ b/src/utils/camera.ts
@@ -23,12 +23,12 @@ export const takePicture = (
cameraRef: RefObject<RNCamera>,
callback: (pic: TakePictureResponse) => void,
) => {
+ cameraRef.current?.pausePreview();
if (cameraRef !== null) {
const options: TakePictureOptions = {
forceUpOrientation: true,
orientation: 'portrait',
writeExif: false,
- pauseAfterCapture: true,
};
cameraRef.current?.takePictureAsync(options).then((pic) => {
callback(pic);