diff --git a/src/components/common/VideoPlayer/Components/MobileControlsBar.tsx b/src/components/common/VideoPlayer/Components/MobileControlsBar.tsx
index 7a733b2..81a677b 100644
--- a/src/components/common/VideoPlayer/Components/MobileControlsBar.tsx
+++ b/src/components/common/VideoPlayer/Components/MobileControlsBar.tsx
@@ -10,8 +10,7 @@ import {
ProgressSlider,
ReloadButton,
VideoTime,
- VolumeButton,
- VolumeSlider,
+ VolumeControl,
} from "./VideoControls.tsx";
export const MobileControlsBar = () => {
@@ -54,10 +53,6 @@ export const MobileControlsBar = () => {
},
}}
>
-
diff --git a/src/components/common/VideoPlayer/Components/VideoControls.tsx b/src/components/common/VideoPlayer/Components/VideoControls.tsx
index ec89106..d655279 100644
--- a/src/components/common/VideoPlayer/Components/VideoControls.tsx
+++ b/src/components/common/VideoPlayer/Components/VideoControls.tsx
@@ -1,4 +1,4 @@
-import { IconButton, Slider, Typography } from "@mui/material";
+import { Box, IconButton, Slider, Typography } from "@mui/material";
import { fontSizeExSmall, fontSizeSmall } from "../../../../constants/Misc.ts";
import { CustomFontTooltip } from "../../../../utils/CustomFontTooltip.tsx";
import { formatTime } from "../../../../utils/numberFunctions.ts";
@@ -18,7 +18,7 @@ import { useSignalEffect } from "@preact/signals-react";
export const PlayButton = () => {
const { togglePlay, playing } = useVideoContext();
return (
-
+
{
export const ReloadButton = () => {
const { reloadVideo } = useVideoContext();
return (
-
+
{
max={videoRef.current?.duration || 100}
sx={{
position: "absolute",
- bottom: "40px",
+ bottom: "42px",
color: "#00abff",
padding: "0px",
// prevents the slider from jumping up 20px in certain mobile conditions
@@ -69,7 +69,8 @@ export const ProgressSlider = () => {
height: "16px",
},
"& .MuiSlider-thumb::after": { width: "20px", height: "20px" },
- "& .MuiSlider-rail": { opacity: 0.5 },
+ "& .MuiSlider-rail": { opacity: 0.5, height: "6px" },
+ "& .MuiSlider-track": { height: "6px", border: "0px" },
}}
/>
);
@@ -81,7 +82,7 @@ export const VideoTime = () => {
return (
{
);
};
-export const VolumeButton = () => {
+const VolumeButton = () => {
const { isMuted, toggleMute } = useVideoContext();
return (
{
);
};
-export const VolumeSlider = ({ width }: { width: string }) => {
+const VolumeSlider = ({ width }: { width: string }) => {
const { volume, onVolumeChange } = useVideoContext();
+ let color = "";
+ if (volume.value <= 0.5) color = "green";
+ else if (volume.value <= 0.75) color = "yellow";
+ else color = "red";
+
return (
{
sx={{
width,
marginRight: "10px",
- "& .MuiSlider-thumb::after": { width: "25px", height: "25px" },
+ color,
+ "& .MuiSlider-thumb": {
+ backgroundColor: "#fff",
+ width: "16px",
+ height: "16px",
+ },
+ "& .MuiSlider-thumb::after": { width: "16px", height: "16px" },
+ "& .MuiSlider-rail": { opacity: 0.5, height: "6px" },
+ "& .MuiSlider-track": { height: "6px", border: "0px" },
}}
/>
);
};
+export const VolumeControl = ({ sliderWidth }: { sliderWidth: string }) => {
+ return (
+
+
+
+
+ );
+};
export const PlaybackRate = () => {
const { playbackRate, increaseSpeed, isScreenSmall } = useVideoContext();
return (
{
return (
<>
{!isFullscreen.value && (
-
+
{
export const ObjectFitButton = () => {
const { toggleObjectFit } = useVideoContext();
return (
-
+
{
export const FullscreenButton = () => {
const { toggleFullscreen } = useVideoContext();
return (
-
+
{
const { from, canPlay, showControlsFullScreen, isScreenSmall, progress } =
useVideoContext();
const showMobileControls = isScreenSmall && canPlay.value;
- const controlsHeight = "40px";
+ const controlsHeight = "42px";
const controlGroupSX = {
display: "flex",
gap: "5px",
@@ -46,8 +44,7 @@ export const VideoControlsBar = () => {
-
-
+
diff --git a/src/components/common/VideoPlayer/VideoPlayer-State.ts b/src/components/common/VideoPlayer/VideoPlayer-State.ts
index 6a1b20f..a41a87d 100644
--- a/src/components/common/VideoPlayer/VideoPlayer-State.ts
+++ b/src/components/common/VideoPlayer/VideoPlayer-State.ts
@@ -147,11 +147,6 @@ export const useVideoPlayerState = (props: VideoPlayerProps, ref: any) => {
if (!videoRef.current) return;
videoRef.current.currentTime = value as number;
progress.value = value as number;
-
- if (!playing.value) {
- await videoRef.current.play();
- playing.value = true;
- }
};
const handleEnded = () => {
@@ -198,9 +193,7 @@ export const useVideoPlayerState = (props: VideoPlayerProps, ref: any) => {
const target = event?.target;
if (target) {
target.pause();
- if (playing.value) {
- playing.value = false;
- }
+ if (playing.value) playing.value = false;
}
};
diff --git a/src/components/common/VideoPlayer/VideoPlayerGlobal.tsx b/src/components/common/VideoPlayer/VideoPlayerGlobal.tsx
index 436aa26..df29970 100644
--- a/src/components/common/VideoPlayer/VideoPlayerGlobal.tsx
+++ b/src/components/common/VideoPlayer/VideoPlayerGlobal.tsx
@@ -445,21 +445,21 @@ export const VideoPlayerGlobal: React.FC = ({
}
};
- useEffect(() => {
- if (element) {
- const oldElement = document.getElementById("videoPlayer");
- if (oldElement && oldElement?.parentNode) {
- oldElement?.parentNode.replaceChild(element, oldElement);
- videoRef.current = element;
- setPlaying(true);
- setCanPlay(true);
- setStartPlay(true);
- //videoRef?.current?.addEventListener("click", () => {});
- videoRef?.current?.addEventListener("timeupdate", updateProgress);
- videoRef?.current?.addEventListener("ended", handleEnded);
- }
- }
- }, [element]);
+ // useEffect(() => {
+ // if (element) {
+ // const oldElement = document.getElementById("videoPlayer");
+ // if (oldElement && oldElement?.parentNode) {
+ // oldElement?.parentNode.replaceChild(element, oldElement);
+ // videoRef.current = element;
+ // setPlaying(true);
+ // setCanPlay(true);
+ // setStartPlay(true);
+ // //videoRef?.current?.addEventListener("click", () => {});
+ // videoRef?.current?.addEventListener("timeupdate", updateProgress);
+ // videoRef?.current?.addEventListener("ended", handleEnded);
+ // }
+ // }
+ // }, [element]);
return (
= ({
}}
>
-
-
-
+ {/**/}
+ {/* */}
+ {/*
*/}
{
color="textPrimary"
sx={{
textAlign: "start",
- marginTop: "10px",
+ marginTop: isScreenSmall ? "20px" : "10px",
}}
>
{videoData?.title}
diff --git a/src/wrappers/GlobalWrapper.tsx b/src/wrappers/GlobalWrapper.tsx
index 59dbd34..58a95c9 100644
--- a/src/wrappers/GlobalWrapper.tsx
+++ b/src/wrappers/GlobalWrapper.tsx
@@ -228,30 +228,30 @@ const GlobalWrapper: React.FC = ({ children, setTheme }) => {
/>
- {}}
- >
- {videoPlaying && (
-
- )}
-
+ {/* {}}*/}
+ {/*>*/}
+ {/* {videoPlaying && (*/}
+ {/* */}
+ {/* )}*/}
+ {/**/}
{children}
>