diff --git a/src/renderer/features/player/components/center-controls.tsx b/src/renderer/features/player/components/center-controls.tsx
index fbfa257d..7d75791d 100644
--- a/src/renderer/features/player/components/center-controls.tsx
+++ b/src/renderer/features/player/components/center-controls.tsx
@@ -7,7 +7,7 @@ import { useTranslation } from 'react-i18next';
import styles from './center-controls.module.css';
-import { PlayerButton } from '/@/renderer/features/player/components/player-button';
+import { PlayButton, PlayerButton } from '/@/renderer/features/player/components/player-button';
import { PlayerbarSlider } from '/@/renderer/features/player/components/playerbar-slider';
import { openShuffleAllModal } from '/@/renderer/features/player/components/shuffle-all-modal';
import { useCenterControls } from '/@/renderer/features/player/hooks/use-center-controls';
@@ -119,12 +119,13 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
}
onClick={handleStop}
tooltip={{
label: t('player.stop', { postProcess: 'sentenceCase' }),
+ openDelay: 0,
}}
variant="tertiary"
/>
@@ -146,6 +147,7 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
postProcess: 'sentenceCase',
})
: t('player.shuffle', { postProcess: 'sentenceCase' }),
+ openDelay: 0,
}}
variant="tertiary"
/>
@@ -160,6 +162,7 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
onClick={handlePrevTrack}
tooltip={{
label: t('player.previous', { postProcess: 'sentenceCase' }),
+ openDelay: 0,
}}
variant="secondary"
/>
@@ -178,33 +181,16 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
context: 'back',
postProcess: 'sentenceCase',
}),
+
+ openDelay: 0,
}}
variant="secondary"
/>
)}
-
- ) : (
-
- )
- }
+ isPaused={status === PlayerStatus.PAUSED}
onClick={handlePlayPause}
- tooltip={{
- label:
- status === PlayerStatus.PAUSED
- ? t('player.play', { postProcess: 'sentenceCase' })
- : t('player.pause', { postProcess: 'sentenceCase' }),
- }}
- variant="main"
/>
{skip?.enabled && (
{
context: 'forward',
postProcess: 'sentenceCase',
}),
+
+ openDelay: 0,
}}
variant="secondary"
/>
@@ -236,6 +224,7 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
onClick={handleNextTrack}
tooltip={{
label: t('player.next', { postProcess: 'sentenceCase' }),
+ openDelay: 0,
}}
variant="secondary"
/>
@@ -274,10 +263,10 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
postProcess: 'sentenceCase',
})
}`,
+ openDelay: 0,
}}
variant="tertiary"
/>
-
{
}
tooltip={{
label: t('player.playRandom', { postProcess: 'sentenceCase' }),
+ openDelay: 0,
}}
variant="tertiary"
/>
diff --git a/src/renderer/features/player/components/player-button.module.css b/src/renderer/features/player/components/player-button.module.css
index da4d8daa..57147235 100644
--- a/src/renderer/features/player/components/player-button.module.css
+++ b/src/renderer/features/player/components/player-button.module.css
@@ -2,11 +2,7 @@
display: flex;
align-items: center;
justify-content: center;
-}
-
-.motion-wrapper.main {
- display: flex;
- margin: 0 0.5rem;
+ cursor: pointer;
}
.player-button {
@@ -16,7 +12,6 @@
width: 100%;
padding: 0.5rem;
overflow: visible;
- cursor: default;
button {
display: flex;
@@ -42,7 +37,6 @@
}
.main {
- background: var(--theme-colors-foreground);
border-radius: 50%;
svg {
diff --git a/src/renderer/features/player/components/player-button.tsx b/src/renderer/features/player/components/player-button.tsx
index ee5b2109..42f0f927 100644
--- a/src/renderer/features/player/components/player-button.tsx
+++ b/src/renderer/features/player/components/player-button.tsx
@@ -1,5 +1,5 @@
import clsx from 'clsx';
-import { motion } from 'motion/react';
+import { t } from 'i18next';
import { forwardRef, ReactNode } from 'react';
import styles from './player-button.module.css';
@@ -14,59 +14,62 @@ interface PlayerButtonProps extends Omit {
variant: 'main' | 'secondary' | 'tertiary';
}
-export const PlayerButton = forwardRef(
- ({ icon, isActive, tooltip, variant, ...rest }: PlayerButtonProps, ref) => {
+export const PlayerButton = forwardRef(
+ ({ icon, isActive, tooltip, variant, ...rest }: PlayerButtonProps) => {
if (tooltip) {
return (
- {
+ e.stopPropagation();
+ rest.onClick?.(e);
+ }}
+ variant="subtle"
>
- {
- e.stopPropagation();
- rest.onClick?.(e);
- }}
- variant="transparent"
- >
- {icon}
-
-
+ {icon}
+
);
}
return (
- {
+ e.stopPropagation();
+ rest.onClick?.(e);
+ }}
+ variant="subtle"
>
- {
- e.stopPropagation();
- rest.onClick?.(e);
- }}
- size="compact-md"
- variant="transparent"
- >
- {icon}
-
-
+ {icon}
+
);
},
);
+
+interface PlayButtonProps extends Omit {
+ isPaused?: boolean;
+}
+
+export const PlayButton = ({ isPaused, ...props }: PlayButtonProps) => {
+ return (
+
+ );
+};
diff --git a/src/renderer/features/player/components/right-controls.tsx b/src/renderer/features/player/components/right-controls.tsx
index 7ac5d0b5..9b34f820 100644
--- a/src/renderer/features/player/components/right-controls.tsx
+++ b/src/renderer/features/player/components/right-controls.tsx
@@ -232,7 +232,7 @@ export const RightControls = () => {
label: t('player.playbackSpeed', { postProcess: 'sentenceCase' }),
openDelay: 0,
}}
- variant="transparent"
+ variant="subtle"
/>
@@ -276,7 +276,7 @@ export const RightControls = () => {
: t('player.favorite', { postProcess: 'titleCase' }),
openDelay: 0,
}}
- variant="transparent"
+ variant="subtle"
/>
{
label: t('player.viewQueue', { postProcess: 'titleCase' }),
openDelay: 0,
}}
- variant="transparent"
+ variant="subtle"
/>
50 ? 'volumeMax' : 'volumeNormal'}
@@ -304,7 +304,7 @@ export const RightControls = () => {
label: muted ? t('player.muted', { postProcess: 'titleCase' }) : volume,
openDelay: 0,
}}
- variant="transparent"
+ variant="subtle"
/>
{!isMinWidth ? (