fix engine settings hash and serialization

This commit is contained in:
Fabian Freund
2025-10-17 02:02:10 +02:00
parent dbd6c6cc29
commit 47aba9a54c
2 changed files with 17 additions and 4 deletions
@@ -200,6 +200,18 @@ class EngineSettings extends GeckoEngineSettings with FastEquatable {
@override
List<Object?> get hashParameters => [
javascriptEnabled,
trackingProtectionPolicy,
httpsOnlyMode,
globalPrivacyControlEnabled,
preferredColorScheme,
cookieBannerHandlingMode,
cookieBannerHandlingModePrivateBrowsing,
cookieBannerHandlingGlobalRules,
cookieBannerHandlingGlobalRulesSubFrames,
webContentIsolationStrategy,
userAgent,
enterpriseRootsEnabled,
queryParameterStripping,
bounceTrackingProtectionMode,
addonCollection,
@@ -18,8 +18,10 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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,