import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../player/audio_handler.dart'; import '../shared/cover.dart'; import 'database.dart'; import 'song_media.dart'; /// Scrollbare Songliste; Tippen spielt die ganze Liste ab dem Song ab. class SongList extends StatelessWidget { const SongList(this.songs, {super.key}); final List songs; @override Widget build(BuildContext context) { final handler = context.read(); return ListView.builder( itemCount: songs.length, itemBuilder: (context, i) { final s = songs[i]; return ListTile( leading: CoverImage( artUri: s.coverPath != null ? Uri.file(s.coverPath!) : null, size: 48, radius: 6, ), title: Text(s.title, maxLines: 1, overflow: TextOverflow.ellipsis), subtitle: Text(s.artist ?? 'Unbekannt', maxLines: 1, overflow: TextOverflow.ellipsis), onTap: () => playSongs(handler, songs, i), ); }, ); } }