🐛 Fix bugs on mobile

This commit is contained in:
2025-12-20 15:15:23 +08:00
parent 3955e7b859
commit 9ea635f5c5
2 changed files with 24 additions and 22 deletions

View File

@@ -10,7 +10,7 @@ import 'package:groovybox/logic/lyrics_parser.dart';
import 'package:groovybox/logic/window_helpers.dart'; import 'package:groovybox/logic/window_helpers.dart';
import 'package:groovybox/providers/audio_provider.dart'; import 'package:groovybox/providers/audio_provider.dart';
import 'package:groovybox/providers/watch_folder_provider.dart'; import 'package:groovybox/providers/watch_folder_provider.dart';
import 'package:groovybox/ui/screens/settings_screen.dart'; import 'package:groovybox/router.dart';
import 'package:groovybox/ui/tabs/albums_tab.dart'; import 'package:groovybox/ui/tabs/albums_tab.dart';
import 'package:groovybox/ui/tabs/playlists_tab.dart'; import 'package:groovybox/ui/tabs/playlists_tab.dart';
import 'package:groovybox/ui/widgets/track_tile.dart'; import 'package:groovybox/ui/widgets/track_tile.dart';
@@ -143,11 +143,7 @@ class LibraryScreen extends HookConsumerWidget {
actions: [ actions: [
IconButton( IconButton(
onPressed: () { onPressed: () {
Navigator.of(context).push( ref.read(routerProvider).push(AppRoutes.settings);
MaterialPageRoute(
builder: (context) => SettingsScreen(),
),
);
}, },
icon: const Icon(Symbols.settings), icon: const Icon(Symbols.settings),
), ),
@@ -156,8 +152,7 @@ class LibraryScreen extends HookConsumerWidget {
tooltip: 'Import Files', tooltip: 'Import Files',
onPressed: () async { onPressed: () async {
final result = await FilePicker.platform.pickFiles( final result = await FilePicker.platform.pickFiles(
type: FileType.custom, type: FileType.any,
allowedExtensions: allAllowedExtensions,
allowMultiple: true, allowMultiple: true,
); );
if (result != null && result.files.isNotEmpty) { if (result != null && result.files.isNotEmpty) {
@@ -306,13 +301,18 @@ class LibraryScreen extends HookConsumerWidget {
], ],
), ),
actions: [ actions: [
IconButton(
onPressed: () {
ref.read(routerProvider).push(AppRoutes.settings);
},
icon: const Icon(Symbols.settings),
),
IconButton( IconButton(
icon: const Icon(Symbols.add_circle_outline), icon: const Icon(Symbols.add_circle_outline),
tooltip: 'Import Files', tooltip: 'Import Files',
onPressed: () async { onPressed: () async {
final result = await FilePicker.platform.pickFiles( final result = await FilePicker.platform.pickFiles(
type: FileType.custom, type: FileType.any,
allowedExtensions: allAllowedExtensions,
allowMultiple: true, allowMultiple: true,
); );
if (result != null && result.files.isNotEmpty) { if (result != null && result.files.isNotEmpty) {

View File

@@ -404,18 +404,20 @@ class Shell extends HookConsumerWidget {
); );
} }
return Shortcuts( return Material(
shortcuts: <LogicalKeySet, Intent>{ child: Shortcuts(
LogicalKeySet(LogicalKeyboardKey.escape): const PopIntent(), shortcuts: <LogicalKeySet, Intent>{
}, LogicalKeySet(LogicalKeyboardKey.escape): const PopIntent(),
child: Actions( },
actions: <Type, Action<Intent>>{PopIntent: PopAction(ref)}, child: Actions(
child: Stack( actions: <Type, Action<Intent>>{PopIntent: PopAction(ref)},
fit: StackFit.expand, child: Stack(
children: [ fit: StackFit.expand,
Positioned.fill(child: child), children: [
Positioned(left: 0, right: 0, bottom: 0, child: MiniPlayer()), Positioned.fill(child: child),
], Positioned(left: 0, right: 0, bottom: 0, child: MiniPlayer()),
],
),
), ),
), ),
); );