From 9952f0716b67ba7721a37fb98b9b66eb9b6d6bff Mon Sep 17 00:00:00 2001 From: omkar Date: Fri, 10 Jan 2025 10:37:06 +0530 Subject: [PATCH] fix: fix for the web --- .../screen/playback_settings_screen.dart | 5 ++- .../service/zeee_watch_history.dart | 6 +--- lib/pages/home_tab.page.dart | 34 ++++++++++++++----- 3 files changed, 28 insertions(+), 17 deletions(-) diff --git a/lib/features/settings/screen/playback_settings_screen.dart b/lib/features/settings/screen/playback_settings_screen.dart index df40160..3d2e2ec 100644 --- a/lib/features/settings/screen/playback_settings_screen.dart +++ b/lib/features/settings/screen/playback_settings_screen.dart @@ -167,7 +167,7 @@ class _PlaybackSettingsScreenState extends State { 'externalPlayer': _enableExternalPlayer, 'externalPlayerId': extranalId, 'disableSubtitle': _disabledSubtitle, - 'subtitleStyle': _subtitleStyle, + 'subtitleStyle': _selectedSubtitleStyle, 'subtitleColor': colorToHex(_selectedSubtitleColor), 'subtitleSize': _subtitleSize, }, @@ -327,8 +327,7 @@ class _PlaybackSettingsScreenState extends State { HapticFeedback.mediumImpact(); if (value != null) { setState(() { - _subtitleStyle.remove(value); - _subtitleStyle.insert(0, value); + _selectedSubtitleStyle = value; }); _debouncedSave(); } diff --git a/lib/features/watch_history/service/zeee_watch_history.dart b/lib/features/watch_history/service/zeee_watch_history.dart index 7aeaae1..b333554 100644 --- a/lib/features/watch_history/service/zeee_watch_history.dart +++ b/lib/features/watch_history/service/zeee_watch_history.dart @@ -199,13 +199,11 @@ class ZeeeWatchHistory extends BaseWatchHistory { for (final record in unsynced) { try { - // Check server record before updating try { final serverRecord = await collection.getOne(record.id); final serverUpdatedAt = DateTime.parse(serverRecord.get('updated')); - // Skip if server has newer data if (record.updatedAt.isBefore(serverUpdatedAt)) { await db.watchHistoryQueries.updateSyncStatus( record.id, @@ -213,9 +211,7 @@ class ZeeeWatchHistory extends BaseWatchHistory { ); continue; } - } catch (e) { - // Record doesn't exist on server, will create new - } + } catch (e) {} if (record.lastSyncedAt == null) { await collection.create( diff --git a/lib/pages/home_tab.page.dart b/lib/pages/home_tab.page.dart index 52f486e..9679f57 100644 --- a/lib/pages/home_tab.page.dart +++ b/lib/pages/home_tab.page.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:cached_query_flutter/cached_query_flutter.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; @@ -6,6 +8,7 @@ import 'package:madari_client/engine/library.dart'; import 'package:madari_client/features/connections/service/base_connection_service.dart'; import 'package:madari_client/features/trakt/containers/up_next.container.dart'; import 'package:madari_client/features/trakt/service/trakt.service.dart'; +import 'package:pocketbase/pocketbase.dart'; import '../features/connections/widget/base/render_library_list.dart'; import '../features/getting_started/container/getting_started.dart'; @@ -93,6 +96,16 @@ class _HomeTabPageState extends State { return traktService.getHomePageContent(); } + reloadPage() async { + await refreshAuth(); + await query.refetch(); + setState(() { + traktLibraries = getTraktLibraries(); + }); + await _onRefresh(); + return; + } + @override Widget build(BuildContext context) { final theme = Theme.of(context); @@ -106,17 +119,20 @@ class _HomeTabPageState extends State { "Madari", style: GoogleFonts.montserrat(), ), + actions: [ + if (isWeb || (!Platform.isIOS && !Platform.isAndroid)) + IconButton( + onPressed: () { + reloadPage(); + }, + icon: const Icon( + Icons.refresh, + ), + ), + ], ), body: RefreshIndicator( - onRefresh: () async { - await refreshAuth(); - await query.refetch(); - setState(() { - traktLibraries = getTraktLibraries(); - }); - await _onRefresh(); - return; - }, + onRefresh: () async {}, child: QueryBuilder( query: query, builder: (context, state) {