diff options
author | Ivan Chen <ivan@tagg.id> | 2021-08-06 17:47:57 -0400 |
---|---|---|
committer | Ivan Chen <ivan@tagg.id> | 2021-08-06 17:47:57 -0400 |
commit | 3329ed720fb336d9e5f893158754f630c7c2509d (patch) | |
tree | 07a25a40831e8fbed83fd4879a1f3e415fe8f0ca /src | |
parent | f4f8336bc66ed8de46ebdb2902a5cb37aac1b932 (diff) |
Cleanup code, Pause preview earlier
Diffstat (limited to 'src')
-rw-r--r-- | src/screens/moments/CameraScreen.tsx | 15 | ||||
-rw-r--r-- | src/utils/camera.ts | 2 |
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); |