From 47aba9a54cc35ecd3caae92adaa25905a00549e2 Mon Sep 17 00:00:00 2001 From: Fabian Freund Date: Fri, 17 Oct 2025 02:02:10 +0200 Subject: [PATCH] fix engine settings hash and serialization --- .../features/user/data/models/engine_settings.dart | 12 ++++++++++++ .../user/domain/repositories/engine_settings.dart | 9 +++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/app/lib/features/user/data/models/engine_settings.dart b/app/lib/features/user/data/models/engine_settings.dart index 1c5a76f2..66d4f295 100644 --- a/app/lib/features/user/data/models/engine_settings.dart +++ b/app/lib/features/user/data/models/engine_settings.dart @@ -200,6 +200,18 @@ class EngineSettings extends GeckoEngineSettings with FastEquatable { @override List get hashParameters => [ + javascriptEnabled, + trackingProtectionPolicy, + httpsOnlyMode, + globalPrivacyControlEnabled, + preferredColorScheme, + cookieBannerHandlingMode, + cookieBannerHandlingModePrivateBrowsing, + cookieBannerHandlingGlobalRules, + cookieBannerHandlingGlobalRulesSubFrames, + webContentIsolationStrategy, + userAgent, + enterpriseRootsEnabled, queryParameterStripping, bounceTrackingProtectionMode, addonCollection, diff --git a/app/lib/features/user/domain/repositories/engine_settings.dart b/app/lib/features/user/domain/repositories/engine_settings.dart index 0226d1c8..041b7029 100644 --- a/app/lib/features/user/domain/repositories/engine_settings.dart +++ b/app/lib/features/user/domain/repositories/engine_settings.dart @@ -18,8 +18,10 @@ * along with this program. If not, see . */ import 'dart:async'; +import 'dart:convert'; import 'package:drift/drift.dart'; +import 'package:nullability/nullability.dart'; import 'package:riverpod/riverpod.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; import 'package:weblibre/features/user/data/models/engine_settings.dart'; @@ -110,10 +112,9 @@ class EngineSettingsRepository extends _$EngineSettingsRepository { DriftSqlType.string, db.typeMapping, ), - 'dohExceptionsList': settings['dohExceptionsList']?.readAs( - DriftSqlType.string, - db.typeMapping, - ), + 'dohExceptionsList': settings['dohExceptionsList'] + ?.readAs(DriftSqlType.string, db.typeMapping) + .mapNotNull(jsonDecode), 'fingerprintingProtectionOverrides': settings['fingerprintingProtectionOverrides']?.readAs( DriftSqlType.string,