display albums from db

This commit is contained in:
austinried
2025-11-08 18:27:37 +09:00
parent 0c80dbdba5
commit ee2a276f2f
18 changed files with 316 additions and 127 deletions

View File

@@ -3,7 +3,12 @@ import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
class AlbumScreen extends StatelessWidget {
const AlbumScreen({super.key});
const AlbumScreen({
super.key,
required this.id,
});
final String id;
@override
Widget build(BuildContext context) {
@@ -12,7 +17,7 @@ class AlbumScreen extends StatelessWidget {
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text('Album!'),
Text('Album $id!'),
TextButton(
onPressed: () {
context.push('/artist');

View File

@@ -1,8 +1,10 @@
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:material_symbols_icons/symbols.dart';
import '../lists/albums_grid.dart';
import '../state/services.dart';
import '../util/custom_scroll_fix.dart';
class LibraryScreen extends StatefulWidget {
@@ -126,13 +128,18 @@ class _LibraryScreenState extends State<LibraryScreen>
)
.toList(),
),
IconButton(
onPressed: () {
context.push('/settings');
},
icon: Icon(
Symbols.settings_rounded,
),
Row(
children: [
SyncButton(),
IconButton(
onPressed: () {
context.push('/settings');
},
icon: Icon(
Symbols.settings_rounded,
),
),
],
),
],
),
@@ -209,3 +216,19 @@ class _NewWidgetState extends State<NewWidget>
);
}
}
class SyncButton extends HookConsumerWidget {
const SyncButton({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
final syncService = ref.watch(syncServiceProvider);
return IconButton(
icon: Icon(Symbols.sync_rounded),
onPressed: () {
syncService.sync();
},
);
}
}