fix: screen breakpoints and persist lyrics delay across screens

This commit is contained in:
Kingkor Roy Tirtho 2023-06-28 17:00:37 +06:00
parent 6b4584e91b
commit df79638fb6
2 changed files with 10 additions and 10 deletions

View File

@ -3,8 +3,8 @@ import 'package:flutter/widgets.dart';
extension ContainerBreakpoints on BoxConstraints {
bool get isXs => biggest.width <= 480;
bool get isSm => biggest.width > 480 && biggest.width <= 640;
bool get isMd => biggest.width > 640 && biggest.width <= 768;
bool get isLg => biggest.width > 768 && biggest.width <= 1024;
bool get isMd => biggest.width > 640 && biggest.width <= 820;
bool get isLg => biggest.width > 820 && biggest.width <= 1024;
bool get isXl => biggest.width > 1024 && biggest.width <= 1280;
bool get is2Xl => biggest.width > 1280;
@ -22,8 +22,8 @@ extension ContainerBreakpoints on BoxConstraints {
extension ScreenBreakpoints on MediaQueryData {
bool get isXs => size.width <= 480;
bool get isSm => size.width > 480 && size.width <= 640;
bool get isMd => size.width > 640 && size.width <= 768;
bool get isLg => size.width > 768 && size.width <= 1024;
bool get isMd => size.width > 640 && size.width <= 820;
bool get isLg => size.width > 820 && size.width <= 1024;
bool get isXl => size.width > 1024 && size.width <= 1280;
bool get is2Xl => size.width > 1280;

View File

@ -57,13 +57,13 @@ class SyncedLyrics extends HookConsumerWidget {
final textTheme = Theme.of(context).textTheme;
useEffect(() {
controller.scrollToIndex(0);
WidgetsBinding.instance.addPostFrameCallback((_) {
ref.listen(
ProxyPlaylistNotifier.provider.select((s) => s.activeTrack),
(previous, next) {
controller.scrollToIndex(0);
ref.read(_delay.notifier).state = 0;
});
return null;
}, [playlist.activeTrack]);
},
);
final headlineTextStyle = (mediaQuery.mdAndUp
? textTheme.displaySmall