mirror of
https://github.com/R0m1k3/xtremflow.git
synced 2026-10-23 15:08:07 +02:00
fix(epg): pass playlist as parameter to RecordingsTab/_EpgGuideView — was null from selectedPlaylistProvider
This commit is contained in:
1 parent
1c38b62516
commit
104159e8da
2 files changed
+14
-13
No files matched your search
@@ -85,7 +85,7 @@ class _DashboardScreenState extends ConsumerState<DashboardScreen> {
|
|||||||
LiveTVTab(playlist: widget.playlist),
|
LiveTVTab(playlist: widget.playlist),
|
||||||
MoviesTab(playlist: widget.playlist),
|
MoviesTab(playlist: widget.playlist),
|
||||||
SeriesTab(playlist: widget.playlist),
|
SeriesTab(playlist: widget.playlist),
|
||||||
const RecordingsTab(),
|
RecordingsTab(playlist: widget.playlist),
|
||||||
const SettingsTab(),
|
const SettingsTab(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -9,9 +9,13 @@ import '../../../core/widgets/glass_container.dart';
|
|||||||
import '../providers/xtream_provider.dart';
|
import '../providers/xtream_provider.dart';
|
||||||
import '../providers/settings_provider.dart';
|
import '../providers/settings_provider.dart';
|
||||||
|
|
||||||
|
import '../../../core/models/playlist_config.dart';
|
||||||
|
|
||||||
/// Onglet "Enregistrements & Guide TV" — combine guide EPG, enregistrements actifs et season passes
|
/// Onglet "Enregistrements & Guide TV" — combine guide EPG, enregistrements actifs et season passes
|
||||||
class RecordingsTab extends StatefulWidget {
|
class RecordingsTab extends StatefulWidget {
|
||||||
const RecordingsTab({super.key});
|
final PlaylistConfig playlist;
|
||||||
|
|
||||||
|
const RecordingsTab({super.key, required this.playlist});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<RecordingsTab> createState() => _RecordingsTabState();
|
State<RecordingsTab> createState() => _RecordingsTabState();
|
||||||
@@ -83,10 +87,10 @@ class _RecordingsTabState extends State<RecordingsTab>
|
|||||||
Expanded(
|
Expanded(
|
||||||
child: TabBarView(
|
child: TabBarView(
|
||||||
controller: _tabController,
|
controller: _tabController,
|
||||||
children: const [
|
children: [
|
||||||
_EpgGuideView(),
|
_EpgGuideView(playlist: widget.playlist),
|
||||||
_RecordingsListView(),
|
const _RecordingsListView(),
|
||||||
_SeasonPassesView(),
|
const _SeasonPassesView(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -101,7 +105,8 @@ class _RecordingsTabState extends State<RecordingsTab>
|
|||||||
|
|
||||||
/// Guide TV EPG — charge les chaînes filtrées depuis les Settings (comme l'onglet TV)
|
/// Guide TV EPG — charge les chaînes filtrées depuis les Settings (comme l'onglet TV)
|
||||||
class _EpgGuideView extends ConsumerStatefulWidget {
|
class _EpgGuideView extends ConsumerStatefulWidget {
|
||||||
const _EpgGuideView();
|
final PlaylistConfig playlist;
|
||||||
|
const _EpgGuideView({required this.playlist});
|
||||||
@override
|
@override
|
||||||
ConsumerState<_EpgGuideView> createState() => _EpgGuideViewState();
|
ConsumerState<_EpgGuideView> createState() => _EpgGuideViewState();
|
||||||
}
|
}
|
||||||
@@ -157,13 +162,9 @@ class _EpgGuideViewState extends ConsumerState<_EpgGuideView> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final playlist = ref.watch(selectedPlaylistProvider);
|
|
||||||
final settings = ref.watch(iptvSettingsProvider);
|
final settings = ref.watch(iptvSettingsProvider);
|
||||||
|
// Utiliser la playlist passée en paramètre directement
|
||||||
// Charger les chaînes seulement si on a une playlist active
|
final channelsAsync = ref.watch(liveChannelsByPlaylistProvider(widget.playlist));
|
||||||
final channelsAsync = playlist != null
|
|
||||||
? ref.watch(liveChannelsByPlaylistProvider(playlist))
|
|
||||||
: null;
|
|
||||||
|
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsets.all(16),
|
padding: const EdgeInsets.all(16),
|
||||||
|
|||||||
Reference in new issue
Block a user