Commit Graph
1152 Commits
Author SHA1 Message Date
vicrodh ab6cbfa414 style(sidebar): scrollbar hover on section, smaller toggle button
- Scrollbar shows on playlists-section hover (not just scrollbar area)
- Toggle button: 22px diameter (was 24px), right: -11px
2026-01-23 23:44:26 -06:00
vicrodh eebf766f1c fix(sidebar): scrollbar visibility on hover
- Add scrollbar-color for Firefox support
- Remove transition (not supported on scrollbar pseudo-elements)
2026-01-23 23:41:49 -06:00
vicrodh f3467706ce style(sidebar): hide scrollbar by default, align collapsed icons
- Scrollbar hidden by default, visible on hover
- Space reserved (4px width maintained)
- Moved 1px right (margin-right: 3px)
- Collapsed mode: margin-right 0 to align icons with rest of sidebar
2026-01-23 23:40:43 -06:00
vicrodh 153e820523 style(sidebar): move scrollbar 4px left with margin-right 2026-01-23 23:37:33 -06:00
vicrodh c028ac628f style(sidebar): darker toggle shadow, unified thin scrollbar
- Toggle shadow: -4px 0 12px with 0.75 alpha (falls on sidebar)
- Scrollbar: moved 2px left (padding-right: 2px)
- Both views now use same 4px thin scrollbar style
2026-01-23 23:36:13 -06:00
vicrodh f375ae23fe style(sidebar): solid toggle button with shadow
- Remove transparency, use solid bg-tertiary
- Reduce diameter from 28px to 24px (center preserved)
- Add drop shadow like context menu caret
2026-01-23 23:32:07 -06:00
vicrodh ada7b7b84c style(artist): remove solid backgrounds, Load More button, thin badges
- Remove solid background from Discography and all sections below
- Remove Load More button from Discography (initial display sufficient)
- Change badge font-weight to 100 (Thin) in AlbumCard and QualityBadge
- Use LINE Seed JP font family for badges
2026-01-23 23:29:09 -06:00
vicrodh e404048c5b fix(artist): bio truncation reactivity, adjust margins
- Observe parent container for resize (not clamped element)
- Double RAF ensures CSS applies before measurement
- top-tracks-section: margin-top 32px
- artist-header: margin-bottom 22px
2026-01-23 20:51:09 -06:00
vicrodh f19081ee1d feat(artist): smart 3-line bio truncation with resize detection
- Use CSS line-clamp for exactly 3 lines (reactive to container width)
- ResizeObserver detects window/container resizes
- Auto-hide Read more/Show less if text fits in 3 lines
- Works across all screen sizes (4K to HD)
2026-01-23 18:58:15 -06:00
vicrodh 30bb7bc980 fix(artist): spacing, hover glow, context menu homologation
- Change margin-top to padding-top for 10px spacing (avoids collapse)
- Add animated glow expansion on Play All button hover
- Match context menu styling to TrackMenu component
2026-01-23 18:52:50 -06:00
vicrodh dc0038fbfb style(artist): subtle glow on Play All, outline on context button 2026-01-23 18:47:49 -06:00
vicrodh 3f9d7e4de5 style(artist): polish Popular Tracks buttons and menu
- Add 10px top margin for spacing from jump-nav
- Play All button (44px) larger than context menu button (40px)
- Add backdrop to context menu for click-outside-to-close behavior
- Reduce icon size in smaller button (18px)
2026-01-23 18:47:06 -06:00
vicrodh 2f026fa181 feat(artist): redesign Popular Tracks section
- Remove solid background container
- Show 5 tracks by default with progressive loading (5 → 20 → 50)
- Add "Load More" link that disappears after 50 tracks
- Replace text Play All button with circular icon button
- Add context menu (...) with: Play Next, Play Later, Shuffle, Add to Playlist
- All actions apply to full track list (up to 50)
- Remove divider line before section
2026-01-23 18:43:53 -06:00
vicrodh 1185d307f5 style: opaque nav bars with subtle shadow
- Remove transparency from all sticky nav bars (fully opaque)
- Remove backdrop-filter blur (not needed with opaque bg)
- Add subtle box-shadow (4px) for content-fades-beneath effect
- Applied to Artist, Favorites, LocalLibrary, Settings views
2026-01-23 18:23:30 -06:00
vicrodh 75aeb9592f fix: remove main-content padding-left for edge-to-edge nav bars
- Removed padding-left: 20px from main-content
- Toggle button and jump-nav don't collide (different vertical positions)
- Updated all view nav bars with corrected margin/width calculations
- Nav bars now truly flush with sidebar edge
2026-01-23 18:21:49 -06:00
vicrodh 7c14a6835e fix: extend sticky nav bars edge-to-edge with sidebar
- ArtistDetailView: jump-nav now flush with sidebar (margin -44px left)
- FavoritesView: favorites-nav flush with sidebar
- LocalLibraryView: jump-nav flush with sidebar
- SettingsView: settings-nav flush with sidebar
- All navs compensate for both main-content and view padding
- Radio animation: faster floating messages (1.2s), infinite loop
2026-01-23 18:17:34 -06:00
vicrodh 87e4b7c356 style(artist): add floating text animation to radio loading
Step 2 of radio button animation:
- Add wrapper for positioning context
- Floating messages appear above button and fade upward
- Uses Svelte #key directive to re-trigger animation on message change
- Absolute positioning ensures no layout shift
2026-01-23 18:13:00 -06:00
vicrodh a1d5f8a137 style(artist): add rotating arcs animation to radio button
- Replace expanding button with rotating concentric arcs
- Outer arc: rotates clockwise at 1.2s
- Inner arc: rotates counter-clockwise at 1.8s
- Animation uses absolute positioning, doesn't affect layout
- Button maintains size during loading state
2026-01-23 18:11:56 -06:00
vicrodh 65716c9e07 style(artist): restructure header per design specs
- Move action buttons below Similar Artists section
- Remove images from Similar Artists (text-only with bullet separators)
- Remove solid background from biography
- Add thin font weight (300) to bio area
- Update Similar Artists to uppercase title with letter-spacing
2026-01-23 18:11:07 -06:00
vicrodh 008ef6e443 fix(artist): add data-track-id attribute for scroll-to-track
The scrollToTrack function queries for [data-track-id] but the
attribute was missing on track rows, preventing track focus from
context.
2026-01-23 17:20:23 -06:00
vicrodh edfb167393 i18n: add translations for sort options and artist sections
- Add sort translations: default, newest, oldest, titleAsc, titleDesc, artist
- Add missing artist section translations: tributes, others, playlists
- Both English and Spanish locales updated
2026-01-23 17:19:42 -06:00
vicrodh 5f30747ef5 style: add glass effect to LocalLibrary and Settings nav bars
- LocalLibraryView: fix jump-nav margins and add glass effect
- SettingsView: fix settings-nav margins and add glass effect
- Both: proper width calculations for full-width coverage
- Both: backdrop-filter blur for modern glass appearance
2026-01-23 17:17:11 -06:00
vicrodh 69b51ac9c1 style(favorites): add glass effect and fix nav width
- Add backdrop-filter blur to favorites-nav for glass effect
- Fix nav margins to match parent padding (24px left, 8px right)
- Add proper width calculation for full-width coverage
2026-01-23 17:16:13 -06:00
vicrodh cc6d14e24b fix(artist): jump-nav full width and consistent section headers
- Fix jump-nav to span 100% of content width with proper margins
- Make Popular Tracks section header consistent with other sections
- Add track count badge to Popular Tracks
- Remove unused section-header-row CSS
2026-01-23 17:14:54 -06:00
vicrodh 77e4619e7b fix(artist): add missing onAddAlbumToPlaylist to Others section
The Others section was missing the onAddAlbumToPlaylist prop that
other album sections have, making the context menu inconsistent.
2026-01-23 17:10:14 -06:00
vicrodh 89a9f2e130 style(artist): consistent section-header-left wrapper for all sections
Apply section-header-left wrapper to all remaining album sections
for consistent structure (EPs & Singles, Live Albums, Compilations,
Tributes & Covers, Others, Playlists).
2026-01-23 17:09:46 -06:00
vicrodh 1aeb3642c6 fix(artist): move sort dropdown to discography header
- Move album sort dropdown from jump-nav to Discography section header
- Align sort dropdown to right of section title
- Revert similar artists styling to original
- Sort now only applies to album sections below it
2026-01-23 17:06:18 -06:00
vicrodh d371711e59 style(artist): improve artist view visual design
- Add album counts to section headers (Discography, EPs & Singles, etc.)
- Add glass effect to sticky jump navigation bar
- Wrap discography sections in cards with rounded corners
- Improve similar artists section with chip-style buttons
- Add card styling to biography section
- Improve top tracks section with card background
- Better visual separation with gradient dividers
- Consistent spacing and typography updates
2026-01-23 16:54:43 -06:00
vicrodh e86734c9a7 fix(tray): restore window properly from tray menu
Add unminimize() call to show_hide menu handler to match left-click
behavior. Also add logging for debugging visibility state.
2026-01-23 16:49:33 -06:00
vicrodh 4aa76a0ed4 feat(artist): add album sorting in artist view
Add sort dropdown in artist detail view jump navigation with options:
- Default (API order)
- Newest First (by release year)
- Oldest First (by release year)
- Title (A-Z / Z-A)

Sorting applies to all album sections: albums, EPs/singles, live albums,
compilations, tributes, and others.
2026-01-23 16:45:24 -06:00
vicrodh d8d87c8955 feat(favorites): add album sorting options
Add sort dropdown for favorite albums with options:
- Default (API order)
- Newest First (by release date)
- Oldest First (by release date)
- Title (A-Z / Z-A)
- Artist

Sort preference is persisted to localStorage.
2026-01-23 16:41:51 -06:00
vicrodh 077aa01356 feat(settings): add system tray settings
Add tray icon configuration options:
- Enable/disable tray icon (requires restart)
- Minimize to tray: hide window when clicking minimize
- Close to tray: hide window instead of quitting

Rust backend: TraySettingsState with SQLite persistence
Frontend: SettingsView tray subsection with toggles

Related to #15 (title bar settings)
2026-01-23 16:38:17 -06:00
vicrodh 3fb597f3fb fix(settings): simplify title bar settings to hide-only option
Remove "Use QBZ title bar" toggle since switching to system decorations
doesn't work reliably on Linux when the window was created without
decorations. Keep only "Hide title bar" option for tiling WM users.
2026-01-23 16:28:50 -06:00
vicrodh f5bcaf4178 fix(ui): make titlebar window buttons clickable
cx
2026-01-23 16:22:27 -06:00
vicrodh 150513179d fix(ui): make titlebar window buttons clickable
cx
2026-01-23 16:22:08 -06:00
vicrodh 3ac957ddda feat(settings): add title bar configuration
Phase 1 implementation:
- Add titleBarStore.ts for managing title bar visibility
- "Use QBZ title bar" toggle (default ON) - switches between custom and system decorations
- "Remove title bar" toggle (default OFF) - hides title bar completely for tiling WM users
- Dynamically adjust layout heights when title bar is hidden
- Add i18n translations (en/es)
- Settings integrate with Tauri window.setDecorations() API
2026-01-23 16:16:20 -06:00
vicrodh 921639041c fix(ui): make HomeView loading overlay respect sidebar state
Pass sidebarExpanded prop to HomeView to dynamically position the
loading overlay based on sidebar width (280px expanded, 64px collapsed).
Added smooth transition for left position.
2026-01-23 16:10:43 -06:00
vicrodh b5ee10afa1 fix(ui): use overlay scrollbar in collapsed sidebar
Replace hidden scrollbar with thin overlay scrollbar (4px) that floats
over content without displacing icons. Subtle appearance with
rgba(255,255,255,0.15) thumb.
2026-01-23 16:02:07 -06:00
vicrodh 3568cea956 fix(ui): refine sidebar toggle and collapsed mode
- Reduce toggle button size from 32px to 28px
- Hide scrollbar in collapsed mode to keep icons perfectly aligned
- Add bold first line to playlist tooltips when sidebar is collapsed
- Adjust main content padding (20px) for smaller button
2026-01-23 16:00:10 -06:00
vicrodh a7f0310682 fix(ui): improve sidebar toggle button position and tooltips
- Move toggle button to sidebar edge (50% vertical, half inside/out)
- Add glass effect: rgba(255,255,255,0.08) + backdrop blur + border
- Use single chevron icons instead of double
- Hover: scale 1.1 + increased opacity
- Add left padding (22px) to main content for button clearance
- Fix playlist tooltips: show name + track count when sidebar is collapsed
2026-01-23 15:45:41 -06:00
vicrodh 63fc930f91 style: change font to LINE Seed JP
Replace Inter font with LINE Seed JP (Google Font) for a cleaner look
similar to QobuzSans. Easy to revert if not approved.
2026-01-23 15:32:22 -06:00
vicrodh d0177096af feat(ui): add collapsible sidebar
- Add sidebarStore.ts for expanded/collapsed state with localStorage persistence
- Modify NavigationItem to support collapsed mode (icon-only with tooltip)
- Update Sidebar component with toggle button and collapsed styles
- Width transitions from 280px (expanded) to 64px (collapsed)
- Add i18n translations for collapse/expand actions (en/es)
2026-01-23 15:31:49 -06:00
vicrodh 6d5d264778 refactor(backend): rename module and APIs for compliance
- Renamed download_cache module to offline_cache
- Updated Tauri command names (e.g., cache_track_for_offline)
- Updated event names (offline:caching_started, etc.)
- Updated library database function names
- Updated frontend invoke calls to use new command names
2026-01-23 12:14:39 -06:00
vicrodh 84a2164079 refactor(stores): rename store to offlineCacheState
- Create offlineCacheState.ts with compliant terminology
- Update all component imports and type references
- Add compatibility aliases for gradual migration
- Remove deprecated downloadState.ts

cc
2026-01-23 11:57:53 -06:00
vicrodh 393589862d docs(readme): align terminology for compliance
- Update Legal/Branding section with compliant language
- Remove reference to external tools
- Clarify offline library as temporary playback cache

cc
2026-01-23 11:50:51 -06:00
vicrodh 0f025ae5ef refactor(i18n): replace download terminology with offline library
- Update en.json and es.json with new terminology
- Change "Download" to "Make available offline"
- Change "Downloads" section to "Offline Library"
- Update notifications: cachingStarted, cachedForOffline, cachingFailed
- Update UI copy in SettingsView, TrackMenu, AlbumMenu
- Update toast messages in +page.svelte to use offline terminology
- Change DownloadButton tooltips to use offline language

cc
2026-01-23 11:50:17 -06:00
vicrodh cab7b0f952 fix(queue): match playing indicator style with TrackRow (accent color + shadow) 2026-01-23 11:29:20 -06:00
vicrodh 1f614c5750 fix(queue): update remaining count in real-time when tracks advance 2026-01-23 11:14:13 -06:00
vicrodh 9501a4b909 fix(queue): improve Up Next counter with total, remaining, and infinite modes
- Show format: (20 of 139, 135 left) for normal playback
- Show format: (20 of ∞) for infinite play or radio mode
- Remove Load More from Queue section (not needed)
- Add Load More to History section for tracks > 20
- Add isRadioMode prop to detect radio context
- Pass both queueTotalTracks and queueRemainingTracks
2026-01-23 11:01:08 -06:00
vicrodh e200dfd3eb fix(queue): show actual remaining tracks and ∞ when infinite play active 2026-01-23 10:53:40 -06:00