mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-09 20:29:36 +02:00
add translation keys for window bar
This commit is contained in:
@@ -447,6 +447,10 @@
|
|||||||
"favorites": {
|
"favorites": {
|
||||||
"title": "$t(entity.favorite, {\"count\": 2})"
|
"title": "$t(entity.favorite, {\"count\": 2})"
|
||||||
},
|
},
|
||||||
|
"windowBar": {
|
||||||
|
"paused": "(Paused) ",
|
||||||
|
"privateMode": "(Private mode)"
|
||||||
|
},
|
||||||
"appMenu": {
|
"appMenu": {
|
||||||
"collapseSidebar": "collapse sidebar",
|
"collapseSidebar": "collapse sidebar",
|
||||||
"commandPalette": "open command palette",
|
"commandPalette": "open command palette",
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import isElectron from 'is-electron';
|
import isElectron from 'is-electron';
|
||||||
import { useCallback, useEffect, useMemo, useState } from 'react';
|
import { useCallback, useEffect, useMemo, useState } from 'react';
|
||||||
|
import { useTranslation } from 'react-i18next';
|
||||||
import { RiCheckboxBlankLine, RiCloseLine, RiSubtractLine } from 'react-icons/ri';
|
import { RiCheckboxBlankLine, RiCloseLine, RiSubtractLine } from 'react-icons/ri';
|
||||||
|
|
||||||
import appIcon from '../../../assets/icons/32x32.png';
|
import appIcon from '../../../assets/icons/32x32.png';
|
||||||
@@ -127,6 +128,7 @@ const MacOsControls = ({ controls, title }: WindowBarControlsProps) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const WindowBar = () => {
|
export const WindowBar = () => {
|
||||||
|
const { t } = useTranslation();
|
||||||
const { windowBarStyle } = useWindowSettings();
|
const { windowBarStyle } = useWindowSettings();
|
||||||
const playerStatus = usePlayerStatus();
|
const playerStatus = usePlayerStatus();
|
||||||
const privateMode = useAppStore((state) => state.privateMode);
|
const privateMode = useAppStore((state) => state.privateMode);
|
||||||
@@ -149,12 +151,12 @@ export const WindowBar = () => {
|
|||||||
const handleClose = useCallback(() => close(), []);
|
const handleClose = useCallback(() => close(), []);
|
||||||
|
|
||||||
const title = useMemo(() => {
|
const title = useMemo(() => {
|
||||||
const privateModeString = privateMode ? '(Private mode)' : '';
|
const privateModeString = privateMode ? t('page.windowBar.privateMode') : '';
|
||||||
|
|
||||||
// Show radio information if radio is active
|
// Show radio information if radio is active
|
||||||
if (isRadioActive) {
|
if (isRadioActive) {
|
||||||
const radioStatusString = !isRadioPlaying ? '(Paused) ' : '';
|
const radioStatusString = !isRadioPlaying ? t('page.windowBar.paused') : '';
|
||||||
const radioTitle = stationName || 'Radio';
|
const radioTitle = stationName;
|
||||||
|
|
||||||
// Format metadata: show title, or combine artist and title if both available
|
// Format metadata: show title, or combine artist and title if both available
|
||||||
let radioMetadata = '';
|
let radioMetadata = '';
|
||||||
@@ -172,7 +174,7 @@ export const WindowBar = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Show regular song information
|
// Show regular song information
|
||||||
const statusString = playerStatus === PlayerStatus.PAUSED ? '(Paused) ' : '';
|
const statusString = playerStatus === PlayerStatus.PAUSED ? t('page.windowBar.paused') : '';
|
||||||
const queueString = queueLength ? `(${index + 1} / ${queueLength}) ` : '';
|
const queueString = queueLength ? `(${index + 1} / ${queueLength}) ` : '';
|
||||||
const title = `${
|
const title = `${
|
||||||
queueLength
|
queueLength
|
||||||
@@ -191,6 +193,7 @@ export const WindowBar = () => {
|
|||||||
privateMode,
|
privateMode,
|
||||||
queueLength,
|
queueLength,
|
||||||
stationName,
|
stationName,
|
||||||
|
t,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user