2024-08-30 05:23:57 +00:00
|
|
|
import 'dart:math';
|
|
|
|
|
2024-08-28 10:41:32 +00:00
|
|
|
import 'package:flutter/material.dart';
|
2024-08-30 05:23:57 +00:00
|
|
|
import 'package:get/get.dart';
|
2024-08-29 08:42:48 +00:00
|
|
|
import 'package:rhythm_box/widgets/lyrics/synced_lyrics.dart';
|
2024-08-28 10:41:32 +00:00
|
|
|
import 'package:rhythm_box/widgets/player/bottom_player.dart';
|
|
|
|
|
2024-09-02 12:42:33 +00:00
|
|
|
class LyricsScreen extends StatefulWidget {
|
2024-08-28 10:41:32 +00:00
|
|
|
const LyricsScreen({super.key});
|
|
|
|
|
2024-09-02 12:42:33 +00:00
|
|
|
@override
|
|
|
|
State<LyricsScreen> createState() => _LyricsScreenState();
|
|
|
|
}
|
|
|
|
|
|
|
|
class _LyricsScreenState extends State<LyricsScreen> {
|
2024-08-28 10:41:32 +00:00
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
return Material(
|
|
|
|
color: Theme.of(context).colorScheme.surface,
|
|
|
|
child: Scaffold(
|
|
|
|
appBar: AppBar(
|
|
|
|
title: const Text('Lyrics'),
|
|
|
|
),
|
|
|
|
body: const Column(
|
|
|
|
children: [
|
|
|
|
Expanded(
|
|
|
|
child: SyncedLyrics(
|
|
|
|
defaultTextZoom: 67,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
2024-08-30 05:23:57 +00:00
|
|
|
bottomNavigationBar: SizedBox(
|
|
|
|
height: 85 + max(MediaQuery.of(context).padding.bottom, 16),
|
2024-08-28 10:41:32 +00:00
|
|
|
child: Material(
|
|
|
|
elevation: 2,
|
2024-08-30 05:23:57 +00:00
|
|
|
child: const BottomPlayer(
|
2024-08-28 12:34:35 +00:00
|
|
|
key: Key('lyrics-page-bottom-player'),
|
|
|
|
usePop: true,
|
2024-08-30 05:23:57 +00:00
|
|
|
).paddingOnly(
|
|
|
|
bottom: max(MediaQuery.of(context).padding.bottom, 16),
|
2024-08-28 12:34:35 +00:00
|
|
|
),
|
2024-08-28 10:41:32 +00:00
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|