From 4aa47ffbef62d86a16e900eb013c2f8314e7d0eb Mon Sep 17 00:00:00 2001
From: Pas <74743263+Pasithea0@users.noreply.github.com>
Date: Thu, 5 Jun 2025 12:10:30 -0600
Subject: [PATCH] remove some unneeded changes
---
src/components/player/atoms/SpeedChangedPopout.tsx | 8 ++++++--
src/components/player/base/SubtitleView.tsx | 5 ++---
src/components/player/internals/KeyboardEvents.tsx | 8 ++++----
src/components/player/utils/captions.ts | 5 -----
src/stores/interface/overlayStack.ts | 4 ++--
5 files changed, 14 insertions(+), 16 deletions(-)
diff --git a/src/components/player/atoms/SpeedChangedPopout.tsx b/src/components/player/atoms/SpeedChangedPopout.tsx
index feb29dc0..98194bd2 100644
--- a/src/components/player/atoms/SpeedChangedPopout.tsx
+++ b/src/components/player/atoms/SpeedChangedPopout.tsx
@@ -1,3 +1,5 @@
+import { t } from "i18next";
+
import { Icon, Icons } from "@/components/Icon";
import { Flare } from "@/components/utils/Flare";
import { Transition } from "@/components/utils/Transition";
@@ -31,8 +33,10 @@ export function SpeedChangedPopout() {
{isSpeedBoosted
- ? "Boosted to 2x speed"
- : `Speed: ${playbackRate}x`}
+ ? t("player.menus.playback.speedBoosted")
+ : t("player.menus.playback.speedUnboosted", {
+ speed: playbackRate,
+ })}
diff --git a/src/components/player/base/SubtitleView.tsx b/src/components/player/base/SubtitleView.tsx
index e4eb562a..496b230c 100644
--- a/src/components/player/base/SubtitleView.tsx
+++ b/src/components/player/base/SubtitleView.tsx
@@ -116,7 +116,6 @@ export function SubtitleRenderer() {
const styling = useSubtitleStore((s) => s.styling);
const overrideCasing = useSubtitleStore((s) => s.overrideCasing);
const delay = useSubtitleStore((s) => s.delay);
- const playbackRate = usePlayerStore((s) => s.mediaPlaying.playbackRate);
const parsedCaptions = useMemo(
() => (srtData ? parseSubtitles(srtData, language) : []),
@@ -126,9 +125,9 @@ export function SubtitleRenderer() {
const visibileCaptions = useMemo(
() =>
parsedCaptions.filter(({ start, end }) =>
- captionIsVisible(start, end, delay, videoTime, playbackRate),
+ captionIsVisible(start, end, delay, videoTime),
),
- [parsedCaptions, videoTime, delay, playbackRate],
+ [parsedCaptions, videoTime, delay],
);
return (
diff --git a/src/components/player/internals/KeyboardEvents.tsx b/src/components/player/internals/KeyboardEvents.tsx
index 81172f45..2616edeb 100644
--- a/src/components/player/internals/KeyboardEvents.tsx
+++ b/src/components/player/internals/KeyboardEvents.tsx
@@ -16,8 +16,6 @@ export function KeyboardEvents() {
const mediaPlaying = usePlayerStore((s) => s.mediaPlaying);
const time = usePlayerStore((s) => s.progress.time);
const { setVolume, toggleMute } = useVolume();
- const setSpeedBoosted = usePlayerStore((s) => s.setSpeedBoosted);
- const setShowSpeedIndicator = usePlayerStore((s) => s.setShowSpeedIndicator);
const { toggleLastUsed } = useCaptions();
const setShowVolume = useEmpheralVolumeStore((s) => s.setShowVolume);
@@ -30,13 +28,15 @@ export function KeyboardEvents() {
const [isRolling, setIsRolling] = useState(false);
const volumeDebounce = useRef | undefined>();
const subtitleDebounce = useRef | undefined>();
+
+ // Speed boost
+ const setSpeedBoosted = usePlayerStore((s) => s.setSpeedBoosted);
+ const setShowSpeedIndicator = usePlayerStore((s) => s.setShowSpeedIndicator);
const speedIndicatorTimeoutRef = useRef<
ReturnType | undefined
>();
const boostTimeoutRef = useRef | undefined>();
const isPendingBoostRef = useRef(false);
-
- // Tracking previous playback rate when space is held down
const previousRateRef = useRef(1);
const isSpaceHeldRef = useRef(false);
diff --git a/src/components/player/utils/captions.ts b/src/components/player/utils/captions.ts
index 5f133bd4..d144340e 100644
--- a/src/components/player/utils/captions.ts
+++ b/src/components/player/utils/captions.ts
@@ -13,14 +13,9 @@ export function captionIsVisible(
end: number,
delay: number,
currentTime: number,
- playbackRate: number = 1,
) {
- // Calculate subtitle timing with delay adjustment
- // When playback is sped up, we need to adjust the subtitle windows accordingly
- // so they appear at the right time but also remain visible for the right duration
const delayedStart = start / 1000 + delay;
const delayedEnd = end / 1000 + delay;
-
return (
Math.max(0, delayedStart) <= currentTime &&
Math.max(0, delayedEnd) >= currentTime
diff --git a/src/stores/interface/overlayStack.ts b/src/stores/interface/overlayStack.ts
index 2e615ce8..358eb9f8 100644
--- a/src/stores/interface/overlayStack.ts
+++ b/src/stores/interface/overlayStack.ts
@@ -2,12 +2,12 @@ import { create } from "zustand";
type OverlayType = "volume" | "subtitle" | "speed" | null;
-export interface OverlayStackState {
+interface OverlayStackStore {
currentOverlay: OverlayType;
setCurrentOverlay: (overlay: OverlayType) => void;
}
-export const useOverlayStack = create((set) => ({
+export const useOverlayStack = create((set) => ({
currentOverlay: null,
setCurrentOverlay: (overlay) => set({ currentOverlay: overlay }),
}));