Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Unified Diff: ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.mm

Issue 2888533002: Identify MostVisited by item instead of URL (Closed)
Patch Set: Reviewable Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 {

Powered by Google App Engine
This is Rietveld 408576698