diff --git a/lib/storage/base/settingsProvider.dart b/lib/storage/base/settingsProvider.dart index 8af0145..f8a8d7d 100644 --- a/lib/storage/base/settingsProvider.dart +++ b/lib/storage/base/settingsProvider.dart @@ -1,5 +1,6 @@ import 'dart:convert'; import 'dart:developer'; +import 'package:easy_debounce/easy_debounce.dart'; import 'package:flutter/material.dart'; import 'package:shared_preferences/shared_preferences.dart'; @@ -15,7 +16,11 @@ class SettingsProvider extends ChangeNotifier { Settings val({bool write = false}) { if(write) { notifyListeners(); - Future.delayed(const Duration(milliseconds: 300)).then((_) => update()); + EasyDebounce.debounce( + _fieldName, + const Duration(milliseconds: 500), + update + ); } return _settings; } diff --git a/pubspec.yaml b/pubspec.yaml index 0ed01f6..37b8775 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -93,6 +93,7 @@ dependencies: device_info_plus: ^9.0.3 flutter_app_badger: ^1.5.0 qr_flutter: ^4.1.0 + easy_debounce: ^2.0.3 dev_dependencies: flutter_test: