mirror of
https://github.com/madari-media/madari-oss.git
synced 2026-04-21 19:21:56 +00:00
fix: fix for the web
This commit is contained in:
parent
fca2746e91
commit
9952f0716b
3 changed files with 28 additions and 17 deletions
|
|
@ -167,7 +167,7 @@ class _PlaybackSettingsScreenState extends State<PlaybackSettingsScreen> {
|
||||||
'externalPlayer': _enableExternalPlayer,
|
'externalPlayer': _enableExternalPlayer,
|
||||||
'externalPlayerId': extranalId,
|
'externalPlayerId': extranalId,
|
||||||
'disableSubtitle': _disabledSubtitle,
|
'disableSubtitle': _disabledSubtitle,
|
||||||
'subtitleStyle': _subtitleStyle,
|
'subtitleStyle': _selectedSubtitleStyle,
|
||||||
'subtitleColor': colorToHex(_selectedSubtitleColor),
|
'subtitleColor': colorToHex(_selectedSubtitleColor),
|
||||||
'subtitleSize': _subtitleSize,
|
'subtitleSize': _subtitleSize,
|
||||||
},
|
},
|
||||||
|
|
@ -327,8 +327,7 @@ class _PlaybackSettingsScreenState extends State<PlaybackSettingsScreen> {
|
||||||
HapticFeedback.mediumImpact();
|
HapticFeedback.mediumImpact();
|
||||||
if (value != null) {
|
if (value != null) {
|
||||||
setState(() {
|
setState(() {
|
||||||
_subtitleStyle.remove(value);
|
_selectedSubtitleStyle = value;
|
||||||
_subtitleStyle.insert(0, value);
|
|
||||||
});
|
});
|
||||||
_debouncedSave();
|
_debouncedSave();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -199,13 +199,11 @@ class ZeeeWatchHistory extends BaseWatchHistory {
|
||||||
|
|
||||||
for (final record in unsynced) {
|
for (final record in unsynced) {
|
||||||
try {
|
try {
|
||||||
// Check server record before updating
|
|
||||||
try {
|
try {
|
||||||
final serverRecord = await collection.getOne(record.id);
|
final serverRecord = await collection.getOne(record.id);
|
||||||
final serverUpdatedAt =
|
final serverUpdatedAt =
|
||||||
DateTime.parse(serverRecord.get<String>('updated'));
|
DateTime.parse(serverRecord.get<String>('updated'));
|
||||||
|
|
||||||
// Skip if server has newer data
|
|
||||||
if (record.updatedAt.isBefore(serverUpdatedAt)) {
|
if (record.updatedAt.isBefore(serverUpdatedAt)) {
|
||||||
await db.watchHistoryQueries.updateSyncStatus(
|
await db.watchHistoryQueries.updateSyncStatus(
|
||||||
record.id,
|
record.id,
|
||||||
|
|
@ -213,9 +211,7 @@ class ZeeeWatchHistory extends BaseWatchHistory {
|
||||||
);
|
);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {}
|
||||||
// Record doesn't exist on server, will create new
|
|
||||||
}
|
|
||||||
|
|
||||||
if (record.lastSyncedAt == null) {
|
if (record.lastSyncedAt == null) {
|
||||||
await collection.create(
|
await collection.create(
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:cached_query_flutter/cached_query_flutter.dart';
|
import 'package:cached_query_flutter/cached_query_flutter.dart';
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.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/connections/service/base_connection_service.dart';
|
||||||
import 'package:madari_client/features/trakt/containers/up_next.container.dart';
|
import 'package:madari_client/features/trakt/containers/up_next.container.dart';
|
||||||
import 'package:madari_client/features/trakt/service/trakt.service.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/connections/widget/base/render_library_list.dart';
|
||||||
import '../features/getting_started/container/getting_started.dart';
|
import '../features/getting_started/container/getting_started.dart';
|
||||||
|
|
@ -93,6 +96,16 @@ class _HomeTabPageState extends State<HomeTabPage> {
|
||||||
return traktService.getHomePageContent();
|
return traktService.getHomePageContent();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
reloadPage() async {
|
||||||
|
await refreshAuth();
|
||||||
|
await query.refetch();
|
||||||
|
setState(() {
|
||||||
|
traktLibraries = getTraktLibraries();
|
||||||
|
});
|
||||||
|
await _onRefresh();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final theme = Theme.of(context);
|
final theme = Theme.of(context);
|
||||||
|
|
@ -106,17 +119,20 @@ class _HomeTabPageState extends State<HomeTabPage> {
|
||||||
"Madari",
|
"Madari",
|
||||||
style: GoogleFonts.montserrat(),
|
style: GoogleFonts.montserrat(),
|
||||||
),
|
),
|
||||||
|
actions: [
|
||||||
|
if (isWeb || (!Platform.isIOS && !Platform.isAndroid))
|
||||||
|
IconButton(
|
||||||
|
onPressed: () {
|
||||||
|
reloadPage();
|
||||||
|
},
|
||||||
|
icon: const Icon(
|
||||||
|
Icons.refresh,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
),
|
),
|
||||||
body: RefreshIndicator(
|
body: RefreshIndicator(
|
||||||
onRefresh: () async {
|
onRefresh: () async {},
|
||||||
await refreshAuth();
|
|
||||||
await query.refetch();
|
|
||||||
setState(() {
|
|
||||||
traktLibraries = getTraktLibraries();
|
|
||||||
});
|
|
||||||
await _onRefresh();
|
|
||||||
return;
|
|
||||||
},
|
|
||||||
child: QueryBuilder(
|
child: QueryBuilder(
|
||||||
query: query,
|
query: query,
|
||||||
builder: (context, state) {
|
builder: (context, state) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue