Skip to content

Commit de6b185

Browse files
committed
chore: move radio responsibilities out of playerservice and update flutter and deps
- Updated `window_manager` dependency from ^0.5.0 to ^0.5.1. - Changed `yaru` dependency reference to `chore/flutter_3.35.0` and updated `yaru_window` and `yaru_window_linux` to version ^0.2.2. - Enhanced `MockLocalCoverService` to include `createMediaControlsArtUri` method with audio parameter. - Added `MockPlayerService`, `MockOnlineArtService`, and `MockExposeService` to `radio_service_test.mocks.dart` for improved testing capabilities. - Updated `radio_service_test.dart` to utilize the new mock services for better isolation in tests.
1 parent 583e4ce commit de6b185

27 files changed

+1355
-692
lines changed

.fvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"flutter": "3.32.8"
2+
"flutter": "3.35.0"
33
}

lib/app/connectivity_model.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import '../common/data/audio_type.dart';
99
import '../common/view/snackbars.dart';
1010
import '../extensions/connectivity_x.dart';
1111
import '../l10n/l10n.dart';
12-
import '../player/player_model.dart';
1312
import '../player/player_service.dart';
13+
import '../radio/radio_model.dart';
1414
import '../settings/settings_model.dart';
1515

1616
class ConnectivityModel extends SafeChangeNotifier {
@@ -69,18 +69,18 @@ void onConnectivityChangedHandler(
6969
void Function() cancel,
7070
) {
7171
final l10n = context.l10n;
72-
final dataSafeMode = di<PlayerModel>().dataSafeMode;
72+
final dataSafeMode = di<RadioModel>().dataSafeMode;
7373
final notifyDataSafeMode = di<SettingsModel>().notifyDataSafeMode;
7474
if (!res.hasData || !context.mounted || !notifyDataSafeMode) {
7575
return;
7676
}
7777

7878
if (!dataSafeMode && di<Connectivity>().isNotWifiNorEthernet(res.data)) {
79-
di<PlayerModel>().setDataSafeMode(true);
79+
di<RadioModel>().setDataSafeMode(true);
8080
showSnackBar(context: context, content: Text(l10n.dataSafeModeEnabled));
8181
} else if (dataSafeMode &&
8282
!di<Connectivity>().isNotWifiNorEthernet(res.data)) {
83-
di<PlayerModel>().setDataSafeMode(false);
83+
di<RadioModel>().setDataSafeMode(false);
8484
showSnackBar(context: context, content: Text(l10n.dataSafeModeDisabled));
8585
}
8686
}

lib/app/view/musicpod.dart

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,18 +30,23 @@ class _MusicPodState extends State<MusicPod> {
3030
}
3131

3232
@override
33-
Widget build(BuildContext context) => FutureBuilder(
34-
future: _allReady,
35-
builder: (context, snapshot) => snapshot.hasError
36-
? SplashScreen(body: Center(child: Text(snapshot.error.toString())))
37-
: snapshot.hasData
38-
? isLinux
39-
? GtkApplication(
40-
onCommandLine: (args) =>
41-
di<PlayerService>().playPath(args.firstOrNull),
42-
child: const YaruMusicPodApp(),
43-
)
44-
: const MaterialMusicPodApp()
45-
: const SplashScreen(),
33+
Widget build(BuildContext context) => ValueListenableBuilder(
34+
valueListenable: appRestartNotifier,
35+
builder: (context, value, child) {
36+
return FutureBuilder(
37+
future: _allReady,
38+
builder: (context, snapshot) => snapshot.hasError
39+
? SplashScreen(body: Center(child: Text(snapshot.error.toString())))
40+
: snapshot.hasData
41+
? isLinux
42+
? GtkApplication(
43+
onCommandLine: (args) =>
44+
di<PlayerService>().playPath(args.firstOrNull),
45+
child: const YaruMusicPodApp(),
46+
)
47+
: const MaterialMusicPodApp()
48+
: const SplashScreen(),
49+
);
50+
},
4651
);
4752
}

lib/common/view/data_safe_mode_dialog.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import 'package:watch_it/watch_it.dart';
55
import '../../app/connectivity_model.dart';
66
import '../../extensions/connectivity_x.dart';
77
import '../../l10n/l10n.dart';
8-
import '../../player/player_model.dart';
8+
import '../../radio/radio_model.dart';
99
import '../../settings/settings_model.dart';
1010
import 'confirm.dart';
1111

@@ -33,7 +33,7 @@ class DataSafeModeDialog extends StatelessWidget with WatchItMixin {
3333
? l10n.isBackInWifiDialogBody
3434
: l10n.isMaybeLowBandwidthDialogBody,
3535
),
36-
onConfirm: () => di<PlayerModel>().setDataSafeMode(!isEthernetOrWifi),
36+
onConfirm: () => di<RadioModel>().setDataSafeMode(!isEthernetOrWifi),
3737
cancelLabel: l10n.stopToNotifyAboutDataSafeMode,
3838
onCancel: () {
3939
di<SettingsModel>().setNotifyDataSafeMode(false);

0 commit comments

Comments
 (0)