Index: ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm |
diff --git a/ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm b/ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm |
index f8794dbf6e080aded977603842a93a157d708394..01c28a7a1770d302d471817bd1821a122025f9c8 100644 |
--- a/ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm |
+++ b/ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm |
@@ -24,7 +24,6 @@ |
#import "ios/chrome/browser/ui/content_suggestions/identifier/content_suggestions_section_information.h" |
#import "ios/chrome/browser/ui/favicon/favicon_attributes.h" |
#include "ui/base/l10n/l10n_util.h" |
-#include "url/gurl.h" |
#if !defined(__has_feature) || !__has_feature(objc_arc) |
#error "This file requires ARC support." |
@@ -217,8 +216,10 @@ SectionIdentifier SectionIdentifierForInfo( |
// TODO(crbug.com/707754): implement this method. |
} |
-- (void)faviconAvailableForURL:(const GURL&)URL { |
- // TODO(crbug.com/707754): implement this method. |
+- (void)faviconAvailableForItem:(CollectionViewItem<SuggestedContent>*)item { |
+ if ([self.collectionViewController.collectionViewModel hasItem:item]) { |
+ [self fetchFaviconForItem:item]; |
+ } |
} |
#pragma mark - Public methods |
@@ -423,13 +424,11 @@ addSuggestionsToModel:(NSArray<CSCollectionViewItem*>*)suggestions |
ContentSuggestionsCollectionUpdater* strongSelf = |
weakSelf; |
CSCollectionViewItem* strongItem = weakItem; |
- if (!strongSelf || !strongItem) { |
+ if (!strongSelf || !strongItem) |
return; |
- } |
- strongItem.attributes = attributes; |
- [strongSelf.collectionViewController |
- reconfigureCellsForItems:@[ strongItem ]]; |
+ [strongSelf reconfigure:strongItem |
+ withAttributes:attributes]; |
[strongSelf fetchFaviconImageForItem:strongItem]; |
}]; |
@@ -443,20 +442,24 @@ addSuggestionsToModel:(NSArray<CSCollectionViewItem*>*)suggestions |
[self.dataSource |
fetchFaviconImageForItem:item |
completion:^(UIImage* image) { |
- ContentSuggestionsCollectionUpdater* strongSelf = |
- weakSelf; |
- CSCollectionViewItem* strongItem = weakItem; |
- if (!strongSelf || !strongItem || !image) { |
- return; |
- } |
- |
- strongItem.attributes = |
- [FaviconAttributes attributesWithImage:image]; |
- [strongSelf.collectionViewController |
- reconfigureCellsForItems:@[ strongItem ]]; |
+ [weakSelf reconfigure:weakItem |
+ withAttributes:[FaviconAttributes |
+ attributesWithImage:image]]; |
}]; |
} |
+// Sets the attributes of |item| to |attributes| and reconfigure it. |
jif
2017/05/17 13:13:28
and reconfigures
gambard
2017/05/17 14:13:32
Done.
|
+- (void)reconfigure:(CSCollectionViewItem*)item |
+ withAttributes:(FaviconAttributes*)attributes { |
+ if (!item || !attributes || |
+ ![self.collectionViewController.collectionViewModel hasItem:item]) { |
+ return; |
+ } |
+ |
+ item.attributes = attributes; |
+ [self.collectionViewController reconfigureCellsForItems:@[ item ]]; |
+} |
+ |
// Runs the additional action for the section identified by |sectionInfo|. |
- (void)runAdditionalActionForSection: |
(ContentSuggestionsSectionInformation*)sectionInfo { |