Update TrailerContext.tsx

Added automatic screen orientation when playing trailer.
This commit is contained in:
xicoivy 2026-01-31 17:44:36 +01:00 committed by GitHub
parent 045353bc1b
commit 4449a924a3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,3 +1,5 @@
import * as ScreenOrientation from 'expo-screen-orientation';
import React, { createContext, useContext, useState, useCallback, useMemo, ReactNode } from 'react';
interface TrailerContextValue {
@ -12,6 +14,17 @@ const TrailerContext = createContext<TrailerContextValue | undefined>(undefined)
export const TrailerProvider: React.FC<{ children: ReactNode }> = ({ children }) => {
const [isTrailerPlaying, setIsTrailerPlaying] = useState(true);
React.useEffect(() => {
async function handleRotation() {
if (isTrailerPlaying) {
await ScreenOrientation.lockAsync(ScreenOrientation.OrientationLock.LANDSCAPE);
} else {
await ScreenOrientation.lockAsync(ScreenOrientation.OrientationLock.PORTRAIT_UP);
}
}
handleRotation();
}, [isTrailerPlaying]);
const pauseTrailer = useCallback(() => {
setIsTrailerPlaying(false);
}, []);