feat: Add on/off/blurred options to the background image (#442)

Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
PartyDonut 2025-08-09 09:23:47 +02:00 committed by GitHub
parent ef6780b412
commit 715e707bb6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 109 additions and 63 deletions

View file

@ -5,6 +5,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:fladder/models/item_base_model.dart';
import 'package:fladder/models/items/images_models.dart';
import 'package:fladder/models/settings/client_settings_model.dart';
import 'package:fladder/providers/api_provider.dart';
import 'package:fladder/providers/settings/client_settings_provider.dart';
import 'package:fladder/util/fladder_image.dart';
@ -36,7 +37,8 @@ class _BackgroundImageState extends ConsumerState<BackgroundImage> {
}
void updateItems() {
final enabled = ref.read(clientSettingsProvider.select((value) => value.backgroundPosters));
final enabled =
ref.read(clientSettingsProvider.select((value) => value.backgroundImage != BackgroundType.disabled));
WidgetsBinding.instance.addPostFrameCallback((value) async {
if (!enabled && mounted) return;
@ -69,12 +71,13 @@ class _BackgroundImageState extends ConsumerState<BackgroundImage> {
@override
Widget build(BuildContext context) {
final enabled = ref.watch(clientSettingsProvider.select((value) => value.backgroundPosters));
final state = ref.watch(clientSettingsProvider.select((value) => value.backgroundImage));
final enabled = state != BackgroundType.disabled;
return enabled
? FladderImage(
image: backgroundImage,
fit: BoxFit.cover,
blurOnly: false,
blurOnly: state == BackgroundType.blurred,
)
: const SizedBox.shrink();
}