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

Side by Side Diff: ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_updater.h

Issue 2638413006: Add ContentSuggestionsMediator (Closed)
Patch Set: Format Created 3 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECTION _UPDATER_H_ 5 #ifndef IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECTION _UPDATER_H_
6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECTION _UPDATER_H_ 6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECTION _UPDATER_H_
7 7
8 #import <UIKit/UIKit.h> 8 #import <UIKit/UIKit.h>
9 9
10 #import "ios/chrome/browser/ui/collection_view/collection_view_model.h" 10 #import "ios/chrome/browser/ui/collection_view/collection_view_model.h"
11 11
12 @protocol ContentSuggestionsDataSource;
12 @class ContentSuggestionsViewController; 13 @class ContentSuggestionsViewController;
13 14
14 // Enum defining the ItemType of this ContentSuggestionsCollectionUpdater. 15 // Enum defining the ItemType of this ContentSuggestionsCollectionUpdater.
15 typedef NS_ENUM(NSInteger, ItemType) { 16 typedef NS_ENUM(NSInteger, ItemType) {
16 ItemTypeText = kItemTypeEnumZero, 17 ItemTypeText = kItemTypeEnumZero,
17 ItemTypeArticle, 18 ItemTypeArticle,
18 ItemTypeExpand, 19 ItemTypeExpand,
19 ItemTypeStack, 20 ItemTypeStack,
20 ItemTypeFavicon, 21 ItemTypeFavicon,
21 }; 22 };
22 23
23 // Updater for a CollectionViewController populating it with some items and 24 // Updater for a CollectionViewController populating it with some items and
24 // handling the items addition. 25 // handling the items addition.
25 @interface ContentSuggestionsCollectionUpdater : NSObject 26 @interface ContentSuggestionsCollectionUpdater : NSObject
26 27
28 // Initialize with the |dataSource| used to get the data.
29 - (instancetype)initWithDataSource:(id<ContentSuggestionsDataSource>)dataSource
30 NS_DESIGNATED_INITIALIZER;
31
32 - (instancetype)init NS_UNAVAILABLE;
33
27 // |collectionViewController| this Updater will update. Needs to be set before 34 // |collectionViewController| this Updater will update. Needs to be set before
28 // adding items. 35 // adding items.
29 @property(nonatomic, assign) 36 @property(nonatomic, assign)
30 ContentSuggestionsViewController* collectionViewController; 37 ContentSuggestionsViewController* collectionViewController;
31 38
32 // Adds a text item with a |title| and a |subtitle| in the section numbered 39 // Adds a text item with a |title| and a |subtitle| in the section numbered
33 // |section|. If |section| is greater than the current number of section, it 40 // |section|. If |section| is greater than the current number of section, it
34 // will add a new section at the end. 41 // will add a new section at the end.
35 - (void)addTextItem:(NSString*)title 42 - (void)addTextItem:(NSString*)title
36 subtitle:(NSString*)subtitle 43 subtitle:(NSString*)subtitle
37 toSection:(NSInteger)inputSection; 44 toSection:(NSInteger)inputSection;
38 45
39 // Returns whether the section should use the default, non-card style. 46 // Returns whether the section should use the default, non-card style.
40 - (BOOL)shouldUseCustomStyleForSection:(NSInteger)section; 47 - (BOOL)shouldUseCustomStyleForSection:(NSInteger)section;
41 48
42 @end 49 @end
43 50
44 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECT ION_UPDATER_H_ 51 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_COLLECT ION_UPDATER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698