mirror of
https://github.com/Psychotoxical/psysonic.git
synced 2026-07-23 15:55:45 +00:00
fix(settings): clock format "auto" follows the app's UI language (#758)
Auto previously passed `undefined` to `toLocaleTimeString`, which falls back to the JS engine's default locale. Inside WebKitGTK that resolves to `en-US` for many users regardless of `LC_TIME`, so the queue ETA and sleep-timer preview rendered 12h AM/PM even when the OS clock was 24h. Pass `i18n.language` instead, matching the convention already used in the theme-scheduler hour picker (AppearanceTab.tsx). Explicit 12h/24h choices still override.
This commit is contained in:
committed by
GitHub
parent
33ffb94083
commit
8ac5a69a7c
@@ -1,5 +1,6 @@
|
||||
import { useMemo } from 'react';
|
||||
import { ChevronDown, ListMusic } from 'lucide-react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import type { TFunction } from 'i18next';
|
||||
import { usePlayerStore } from '../../store/playerStore';
|
||||
import { useAuthStore } from '../../store/authStore';
|
||||
@@ -26,6 +27,7 @@ export function QueueHeader({
|
||||
const currentTime = usePlayerStore((s) => Math.floor(s.currentTime / 30) * 30);
|
||||
const isPlaying = usePlayerStore((s) => s.isPlaying);
|
||||
const clockFormat = useAuthStore((s) => s.clockFormat);
|
||||
const { i18n } = useTranslation();
|
||||
|
||||
const totalSecs = useMemo(() =>
|
||||
queue.reduce((acc: number, track: Track) => acc + (track.duration || 0), 0),
|
||||
@@ -42,7 +44,7 @@ export function QueueHeader({
|
||||
if (queue.length > 0) {
|
||||
if (durationMode === 'total') dur = formatLongDuration(Math.floor(totalSecs));
|
||||
else if (durationMode === 'remaining') dur = `-${formatLongDuration(Math.floor(remainingSecs))}`;
|
||||
else dur = formatClockTime(Date.now() + remainingSecs * 1000, clockFormat);
|
||||
else dur = formatClockTime(Date.now() + remainingSecs * 1000, clockFormat, i18n.language);
|
||||
}
|
||||
|
||||
const nextMode: DurationMode =
|
||||
|
||||
Reference in New Issue
Block a user