ente/mobile/lib/models/search/recent_searches.dart
2024-03-01 12:25:37 +05:30

25 lines
615 B
Dart

import "package:flutter/material.dart";
import "package:photos/core/constants.dart";
class RecentSearches with ChangeNotifier {
static RecentSearches? _instance;
RecentSearches._();
factory RecentSearches() => _instance ??= RecentSearches._();
final searches = <String>{};
void add(String query) {
searches.add(query);
while (searches.length > kSearchSectionLimit) {
searches.remove(searches.first);
}
//buffer for not surfacing a new recent search before going to the next
//screen
Future.delayed(const Duration(seconds: 1), () {
notifyListeners();
});
}
}