diff --git a/mobile/lib/events/people_changed_event.dart b/mobile/lib/events/people_changed_event.dart index ee5b8e7192..9c8eec4520 100644 --- a/mobile/lib/events/people_changed_event.dart +++ b/mobile/lib/events/people_changed_event.dart @@ -25,4 +25,5 @@ enum PeopleEventType { removedFaceFromCluster, syncDone, saveOrEditPerson, + addedClusterToPerson, } diff --git a/mobile/lib/services/machine_learning/face_ml/feedback/cluster_feedback.dart b/mobile/lib/services/machine_learning/face_ml/feedback/cluster_feedback.dart index f2edc7e2c5..9135aa96f9 100644 --- a/mobile/lib/services/machine_learning/face_ml/feedback/cluster_feedback.dart +++ b/mobile/lib/services/machine_learning/face_ml/feedback/cluster_feedback.dart @@ -480,7 +480,8 @@ class ClusterFeedbackService { personID: person.remoteID, clusterID: clusterID, ); - Bus.instance.fire(PeopleChangedEvent()); + Bus.instance + .fire(PeopleChangedEvent(type: PeopleEventType.addedClusterToPerson)); } Future ignoreCluster(String clusterID) async { diff --git a/mobile/lib/ui/viewer/people/people_page.dart b/mobile/lib/ui/viewer/people/people_page.dart index 33d63ba7ce..9cbd1a26c4 100644 --- a/mobile/lib/ui/viewer/people/people_page.dart +++ b/mobile/lib/ui/viewer/people/people_page.dart @@ -294,7 +294,9 @@ class _Gallery extends StatelessWidget { }, reloadEvent: Bus.instance.on(), forceReloadEvents: [ - Bus.instance.on(), + Bus.instance.on().where( + (event) => event.type != PeopleEventType.addedClusterToPerson, + ), ], removalEventTypes: const { EventType.deletedFromRemote, diff --git a/mobile/lib/ui/viewer/people/person_gallery_suggestion.dart b/mobile/lib/ui/viewer/people/person_gallery_suggestion.dart index d9d930ba57..129d865d6d 100644 --- a/mobile/lib/ui/viewer/people/person_gallery_suggestion.dart +++ b/mobile/lib/ui/viewer/people/person_gallery_suggestion.dart @@ -105,6 +105,7 @@ class _PersonGallerySuggestionState extends State unawaited(_precomputeNextSuggestions()); } else { + _logger.info("No suggestions found"); setState(() { isLoading = false; });