From 1cc674e4eee3dcb7b20b009221ffe617163b099d Mon Sep 17 00:00:00 2001 From: Psychotoxical Date: Fri, 10 Apr 2026 17:05:20 +0200 Subject: [PATCH] fix(ui): icon updates, remove mic button, theme fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - LiveSearch: replace SlidersVertical with TextSearch for advanced search - AlbumHeader: add Highlighter icon for artist bio button - PlayerBar: remove unused lyrics/mic button - components.css: album-detail-badge always opaque (accent bg, white text) - theme: Middle Earth — remove sidebar stripes, fix queue/artist/bio contrast - theme: Toy Tale — fix muted text, queue tabs, sidebar labels, divider - theme: Tetrastack — brighten purple/blue palette, raise text-muted contrast - theme: Horde & Alliance — remove repeating sidebar line pattern Co-Authored-By: Claude Sonnet 4.6 --- src/components/AlbumHeader.tsx | 6 +- src/components/LiveSearch.tsx | 4 +- src/components/PlayerBar.tsx | 12 +--- src/styles/components.css | 2 + src/styles/theme.css | 114 +++++++++++++++++++++++++-------- 5 files changed, 97 insertions(+), 41 deletions(-) diff --git a/src/components/AlbumHeader.tsx b/src/components/AlbumHeader.tsx index 3cc60fec..93edef1e 100644 --- a/src/components/AlbumHeader.tsx +++ b/src/components/AlbumHeader.tsx @@ -1,6 +1,6 @@ import React, { useState } from 'react'; import { useNavigate } from 'react-router-dom'; -import { Play, Heart, ExternalLink, X, ChevronLeft, Download, ListPlus, HardDriveDownload, Loader2 } from 'lucide-react'; +import { Play, Heart, ExternalLink, X, ChevronLeft, Download, ListPlus, HardDriveDownload, Loader2, Highlighter } from 'lucide-react'; import { SubsonicSong, buildCoverArtUrl } from '../api/subsonic'; import CachedImage from './CachedImage'; import CoverLightbox from './CoverLightbox'; @@ -243,7 +243,7 @@ export default function AlbumHeader({ aria-label={t('albumDetail.artistBio')} data-tooltip={t('albumDetail.artistBio')} > - + {downloadProgress !== null ? ( @@ -313,7 +313,7 @@ export default function AlbumHeader({ {downloadProgress !== null ? ( diff --git a/src/components/LiveSearch.tsx b/src/components/LiveSearch.tsx index a371de2a..bb47e776 100644 --- a/src/components/LiveSearch.tsx +++ b/src/components/LiveSearch.tsx @@ -1,6 +1,6 @@ import React, { useState, useEffect, useRef, useCallback } from 'react'; import { useNavigate } from 'react-router-dom'; -import { Search, Disc3, Users, Music, SlidersVertical } from 'lucide-react'; +import { Search, Disc3, Users, Music, SlidersVertical, TextSearch } from 'lucide-react'; import { search, SearchResults, buildCoverArtUrl } from '../api/subsonic'; import { usePlayerStore, songToTrack } from '../store/playerStore'; import { useAuthStore } from '../store/authStore'; @@ -126,7 +126,7 @@ export default function LiveSearch() { data-tooltip-pos="bottom" aria-label={t('search.advanced')} > - + diff --git a/src/components/PlayerBar.tsx b/src/components/PlayerBar.tsx index 65df14a4..da640700 100644 --- a/src/components/PlayerBar.tsx +++ b/src/components/PlayerBar.tsx @@ -2,7 +2,7 @@ import React, { memo, useCallback, useEffect, useMemo, useRef, useState } from ' import { createPortal } from 'react-dom'; import { Play, Pause, SkipBack, SkipForward, Volume2, VolumeX, Music, - Square, Repeat, Repeat1, Maximize2, SlidersVertical, X, Heart, MicVocal, Cast + Square, Repeat, Repeat1, Maximize2, SlidersVertical, X, Heart, Cast } from 'lucide-react'; import { usePlayerStore } from '../store/playerStore'; import { useShallow } from 'zustand/react/shallow'; @@ -298,16 +298,6 @@ export default function PlayerBar() { )} - {/* Lyrics Button */} - - {/* EQ Button */}