feat: add resolution selection to settings

This commit is contained in:
Mert Uyanık
2025-10-29 09:45:02 +03:00
parent 78c699fcea
commit 002ec26b30
7 changed files with 306 additions and 15 deletions
+4 -2
View File
@@ -12,7 +12,7 @@ import { CenterPlayButton } from './controls/CenterPlayButton'
import { SettingsMenu } from './menus/SettingsMenu'
import { useKeyboardShortcuts } from '../hooks/useKeyboardShortcuts'
import { useTouchGestures } from '../hooks/useTouchGestures'
import type { SubtitleTrack, AudioTrack } from '../types'
import type { SubtitleTrack, AudioTrack, VideoQuality } from '../types'
import './ControlsLayer.css'
interface ControlsLayerProps {
@@ -20,6 +20,7 @@ interface ControlsLayerProps {
pictureInPicture?: boolean
subtitles?: SubtitleTrack[]
audioTracks?: AudioTrack[]
qualities?: VideoQuality[]
}
export const ControlsLayer: React.FC<ControlsLayerProps> = ({
@@ -27,6 +28,7 @@ export const ControlsLayer: React.FC<ControlsLayerProps> = ({
pictureInPicture = true,
subtitles = [],
audioTracks = [],
qualities = [],
}) => {
const { videoState, uiState, togglePlay, toggleFullscreen, showControls, hideControls } =
usePlayerContext()
@@ -223,7 +225,7 @@ export const ControlsLayer: React.FC<ControlsLayerProps> = ({
<div className="controls-right">
<div style={{ position: 'relative' }}>
<SettingsButton />
<SettingsMenu subtitles={subtitles} audioTracks={audioTracks} />
<SettingsMenu subtitles={subtitles} audioTracks={audioTracks} qualities={qualities} />
</div>
{pictureInPicture && <PIPButton />}
<FullscreenButton />