v1.1.6+36
All checks were successful
Flutter Schmutter / build (push) Successful in 3m34s

- new theme: p1nk
- optimizations
This commit is contained in:
2025-06-07 23:07:31 +02:00
parent 836a0886e2
commit ffbde73300
5 changed files with 117 additions and 75 deletions

View File

@ -48,16 +48,13 @@ class _DetailViewState extends ConsumerState<DetailView> {
void _preloadAdjacentMedia(int index) async {
final mediaState = ref.read(mediaProvider);
if (index + 1 < mediaState.mediaItems.length) {
final nextUrl = mediaState.mediaItems[index + 1].mediaUrl;
if (await DefaultCacheManager().getFileFromCache(nextUrl) == null) {
await DefaultCacheManager().downloadFile(nextUrl);
}
}
if (index - 1 >= 0) {
final prevUrl = mediaState.mediaItems[index - 1].mediaUrl;
if (await DefaultCacheManager().getFileFromCache(prevUrl) == null) {
await DefaultCacheManager().downloadFile(prevUrl);
for (int offset in [-1, 1]) {
final adjacentIndex = index + offset;
if (adjacentIndex >= 0 && adjacentIndex < mediaState.mediaItems.length) {
final url = mediaState.mediaItems[adjacentIndex].mediaUrl;
if (await DefaultCacheManager().getFileFromCache(url) == null) {
await DefaultCacheManager().downloadFile(url);
}
}
}
}

View File

@ -208,17 +208,19 @@ class _MediaGridState extends ConsumerState<MediaGrid> {
Padding(
padding: const EdgeInsets.symmetric(horizontal: 16.0),
child: Column(
children: themes.map((themeData) {
children: themeMap.entries.map((entry) {
final themeName = entry.key;
final themeData = entry.value;
final currentTheme = ref.watch(themeNotifierProvider);
final isSelected = currentTheme == themeData.theme;
final isSelected = currentTheme == themeData;
return ListTile(
title: Text(themeData.name),
title: Text(themeName),
selected: isSelected,
selectedTileColor: Colors.blue.withValues(alpha: 0.2),
onTap: () async {
await ref
.read(themeNotifierProvider.notifier)
.updateTheme(themeData.name);
.updateTheme(themeName);
},
);
}).toList(),
@ -226,7 +228,6 @@ class _MediaGridState extends ConsumerState<MediaGrid> {
),
],
),
ListTile(
title: Text('v${AppVersion.version}'),
onTap: () {