This commit is contained in:
Forrest 2026-08-05 21:57:06 -04:00
parent 2ce32cac4e
commit b6639fb1c9
26 changed files with 454 additions and 204 deletions

View file

@ -138,9 +138,9 @@ class _ModeSelector extends ConsumerWidget {
mainAxisAlignment: MainAxisAlignment.center,
children: [
label('Artists', BrowseMode.artists),
const Text('|', style: TextStyle(color: TimbreColors.border)),
Text('|', style: TextStyle(color: TimbreColors.border)),
label('Albums', BrowseMode.albums),
const Text('|', style: TextStyle(color: TimbreColors.border)),
Text('|', style: TextStyle(color: TimbreColors.border)),
label('Tracks', BrowseMode.tracks),
],
);
@ -292,14 +292,14 @@ class _AlbumTile extends StatelessWidget {
album.name ?? 'Unknown album',
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: const TextStyle(color: TimbreColors.foreground),
style: TextStyle(color: TimbreColors.foreground),
),
if (album.artist != null)
Text(
album.artist!,
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: const TextStyle(
style: TextStyle(
color: TimbreColors.dimmed, fontSize: 12),
),
],
@ -311,7 +311,7 @@ class _AlbumTile extends StatelessWidget {
class _AlbumArtFallback extends StatelessWidget {
const _AlbumArtFallback();
@override
Widget build(BuildContext context) => const Center(
Widget build(BuildContext context) => Center(
child: Icon(Icons.album_outlined,
color: TimbreColors.dimmed, size: 32),
);
@ -354,7 +354,7 @@ class _TracksPanelState extends ConsumerState<_TracksPanel> {
children: [
const _Loading(),
const SizedBox(height: TimbreSpacing.md),
Text(label, style: const TextStyle(color: TimbreColors.dimmed)),
Text(label, style: TextStyle(color: TimbreColors.dimmed)),
],
),
);
@ -423,8 +423,8 @@ class _TracksPanelState extends ConsumerState<_TracksPanel> {
onTap: index.building
? null
: () => ref.read(libraryIndexProvider.notifier).refresh(),
child: const Padding(
padding: EdgeInsets.symmetric(horizontal: TimbreSpacing.xs),
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: TimbreSpacing.xs),
child: Text('↻ refresh',
style: TextStyle(color: TimbreColors.dimmed, fontSize: 12)),
),
@ -439,7 +439,7 @@ class _TracksPanelState extends ConsumerState<_TracksPanel> {
_confirmDownloadAll(context, visible);
}
},
itemBuilder: (_) => const [
itemBuilder: (_) => [
PopupMenuItem<String>(
value: 'download-all',
child: Row(
@ -454,8 +454,8 @@ class _TracksPanelState extends ConsumerState<_TracksPanel> {
),
),
],
child: const Padding(
padding: EdgeInsets.all(TimbreSpacing.xs),
child: Padding(
padding: const EdgeInsets.all(TimbreSpacing.xs),
child: Icon(Icons.more_vert,
size: 18, color: TimbreColors.dimmed),
),
@ -513,7 +513,7 @@ class _Action extends StatelessWidget {
children: [
Icon(icon, size: 16, color: TimbreColors.dimmed),
const SizedBox(width: TimbreSpacing.sm),
Text(label, style: const TextStyle(color: TimbreColors.foreground)),
Text(label, style: TextStyle(color: TimbreColors.foreground)),
],
),
),
@ -710,7 +710,7 @@ class BrowseRow extends StatelessWidget {
SizedBox(
width: 28,
child: Text(leading!,
style: const TextStyle(color: TimbreColors.dimmed)),
style: TextStyle(color: TimbreColors.dimmed)),
),
Expanded(
child: Column(
@ -721,14 +721,14 @@ class BrowseRow extends StatelessWidget {
title,
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: const TextStyle(color: TimbreColors.foreground),
style: TextStyle(color: TimbreColors.foreground),
),
if (subtitle != null)
Text(
subtitle!,
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: const TextStyle(
style: TextStyle(
color: TimbreColors.dimmed, fontSize: 12),
),
],
@ -752,7 +752,7 @@ class BrowseRow extends StatelessWidget {
if (trailing != null) ...[
const SizedBox(width: TimbreSpacing.md),
Text(trailing!,
style: const TextStyle(color: TimbreColors.dimmed)),
style: TextStyle(color: TimbreColors.dimmed)),
],
if (onPlayNext != null)
_RowIcon(
@ -809,7 +809,7 @@ class _RowMenu extends StatelessWidget {
@override
Widget build(BuildContext context) {
return PopupMenuButton<String>(
icon: const Icon(Icons.more_vert, size: 20, color: TimbreColors.dimmed),
icon: Icon(Icons.more_vert, size: 20, color: TimbreColors.dimmed),
color: TimbreColors.surface,
padding: EdgeInsets.zero,
constraints:
@ -897,7 +897,7 @@ class _NotConnected extends StatelessWidget {
@override
Widget build(BuildContext context) {
return const _Centered(
return _Centered(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
@ -940,7 +940,7 @@ class _ErrorText extends StatelessWidget {
Widget build(BuildContext context) => Text(
message,
textAlign: TextAlign.center,
style: const TextStyle(color: TimbreColors.dimmed),
style: TextStyle(color: TimbreColors.dimmed),
);
}