diff --git a/packages/firebase_ui_firestore/lib/src/query_builder.dart b/packages/firebase_ui_firestore/lib/src/query_builder.dart index a97e3f74..6cb2335a 100644 --- a/packages/firebase_ui_firestore/lib/src/query_builder.dart +++ b/packages/firebase_ui_firestore/lib/src/query_builder.dart @@ -72,6 +72,7 @@ class FirestoreQueryBuilder extends StatefulWidget { required this.query, required this.builder, this.pageSize = 10, + this.includeMetadataChanges = false, this.child, }) : assert(pageSize > 1, 'Cannot have a pageSize lower than 1'); @@ -85,6 +86,10 @@ class FirestoreQueryBuilder extends StatefulWidget { /// When it changes, the current progress will be preserved. final int pageSize; + /// Whether to include metadata changes in the query. + /// Defaults to false. + final bool includeMetadataChanges; + final FirestoreQueryBuilderSnapshotBuilder builder; /// A widget that will be passed to [builder] for optimizations purpose. @@ -172,7 +177,9 @@ class _FirestoreQueryBuilderState final query = widget.query.limit(expectedDocsCount); - _querySubscription = query.snapshots().listen( + _querySubscription = query + .snapshots(includeMetadataChanges: widget.includeMetadataChanges) + .listen( (event) { setState(() { if (nextPage) { @@ -432,6 +439,7 @@ class FirestoreListView extends FirestoreQueryBuilder { required super.query, required FirestoreItemBuilder itemBuilder, super.pageSize, + super.includeMetadataChanges, FirestoreLoadingBuilder? loadingBuilder, FirestoreFetchingIndicatorBuilder? fetchingIndicatorBuilder, FirestoreErrorBuilder? errorBuilder, @@ -543,6 +551,7 @@ class FirestoreListView extends FirestoreQueryBuilder { required super.query, required FirestoreItemBuilder itemBuilder, super.pageSize, + super.includeMetadataChanges, FirestoreLoadingBuilder? loadingBuilder, FirestoreFetchingIndicatorBuilder? fetchingIndicatorBuilder, FirestoreErrorBuilder? errorBuilder,