feat: implement initial mobile IPTV feature with player screen, live TV, movies, and series tabs, along with the Xtream API service.

This commit is contained in:
Michael committed 2026-03-09 13:16:29 +01:00
1 parent b1f887af69
commit 829c5751ca
6 files changed
+112 -80

No files matched your search

@@ -127,10 +127,11 @@ class _MobileSeriesTabState extends ConsumerState<MobileSeriesTab> {
return rating;
}
String _getProxiedImageUrl(String? originalUrl) {
String _getProxiedImageUrl(String? originalUrl, WidgetRef ref) {
if (originalUrl == null || originalUrl.isEmpty) return '';
if (originalUrl.startsWith('http://')) {
return '/api/xtream/$originalUrl';
if (originalUrl.startsWith('http')) {
final service = ref.read(xtreamServiceProvider(widget.playlist));
return '${service.backendBaseUrl}/api/xtream/$originalUrl';
}
return originalUrl;
}
@@ -168,7 +169,7 @@ class _MobileSeriesTabState extends ConsumerState<MobileSeriesTab> {
(s) => HeroItem(
id: s.seriesId.toString(),
title: s.name,
imageUrl: _getProxiedImageUrl(s.cover),
imageUrl: _getProxiedImageUrl(s.cover, ref),
subtitle: s.rating != null ? '${_formatRating(s.rating)} ★' : null,
onMoreInfo: () => _openSeries(s),
),