Example #1
0
        private async Task FillPinnedFavorites()
        {
            if (_settingsService.PinnedFavoriteIds.Count == 0)
            {
                PinnedFavorites.Clear();
                return;
            }

            var pinned = await _favoritesService.GetPinnedFavorites();

            var toRemove = PinnedFavorites.Except(pinned).ToList();

            foreach (var staleFave in toRemove)
            {
                PinnedFavorites.Remove(staleFave);
            }
            foreach (var newFace in pinned.Except(PinnedFavorites))
            {
                PinnedFavorites.Add(newFace);
            }
        }