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

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

Issue 2691593002: Connect ContentSuggestionsMediator to the ContentService (Closed)
Patch Set: Split CL 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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_SECTION_IN FORMATION_H_ 5 #ifndef IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_SECTION_IN FORMATION_H_
6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_SECTION_IN FORMATION_H_ 6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_SECTION_IN FORMATION_H_
7 7
8 #import <Foundation/Foundation.h> 8 #import <Foundation/Foundation.h>
9 9
10 #import "ios/chrome/browser/ui/collection_view/cells/collection_view_item.h" 10 #import "ios/chrome/browser/ui/collection_view/cells/collection_view_item.h"
11 11
12 // Layout for the section and its items. 12 // Layout for the section and its items.
13 typedef NS_ENUM(NSInteger, ContentSuggestionsSectionLayout) { 13 typedef NS_ENUM(NSInteger, ContentSuggestionsSectionLayout) {
14 // Follows the card layout. 14 // Follows the card layout.
15 ContentSuggestionsSectionLayoutCard, 15 ContentSuggestionsSectionLayoutCard,
16 // No specific layout. 16 // No specific layout.
17 ContentSuggestionsSectionLayoutCustom, 17 ContentSuggestionsSectionLayoutCustom,
18 }; 18 };
19 19
20 // This enum is used for ordering the sections and as ID for the section. Make 20 // This enum is used for ordering the sections and as ID for the section. Make
21 // all sections in the same collection have different ID. 21 // all sections in the same collection have different ID.
22 // When adding a new kind of suggestions, add a new corresponding section. The 22 // When adding a new kind of suggestions, add a new corresponding section. The
23 // ordering is not persisted between launch, reordering is possible. 23 // ordering is not persisted between launch, reordering is possible.
24 typedef NS_ENUM(NSInteger, ContentSuggestionsSectionID) { 24 typedef NS_ENUM(NSInteger, ContentSuggestionsSectionID) {
25 ContentSuggestionsSectionBookmarks = 0, 25 ContentSuggestionsSectionBookmarks = 0,
26 ContentSuggestionsSectionArticles = 1, 26 ContentSuggestionsSectionArticles = 1,
27 27
28 // Do not use this. It will trigger a DCHECK. 28 // Do not use this. It will trigger a DCHECK.
29 // Do not add value after this one. 29 // Do not add value after this one.
30 ContentSuggestionsSectionCount 30 ContentSuggestionsSectionUnknown
31 }; 31 };
32 32
33 // Contains the information needed to display the section. 33 // Contains the information needed to display the section.
34 @interface ContentSuggestionsSectionInformation : NSObject 34 @interface ContentSuggestionsSectionInformation : NSObject
35 35
36 - (instancetype)initWithID:(ContentSuggestionsSectionID)ID 36 - (instancetype)initWithID:(ContentSuggestionsSectionID)ID
37 emptyCell:(CollectionViewItem*)emptyCell 37 NS_DESIGNATED_INITIALIZER;
38 layout:(ContentSuggestionsSectionLayout)layout
39 title:(NSString*)title NS_DESIGNATED_INITIALIZER;
40 - (instancetype)init NS_UNAVAILABLE; 38 - (instancetype)init NS_UNAVAILABLE;
41 39
42 // Item to display when the section is empty. If nil the section should not be 40 // Item to display when the section is empty. If nil the section should not be
43 // displayed when empty. 41 // displayed when empty.
44 @property(nonatomic, strong, readonly) CollectionViewItem* emptyCell; 42 @property(nonatomic, strong) CollectionViewItem* emptyCell;
stkhapugin 2017/02/15 15:35:43 Why are these not readonly anymore? Can these be m
gambard 2017/02/16 10:06:30 No, but the creation is in multiple steps (see Con
stkhapugin 2017/02/16 10:53:27 So you agree that it's better and safer to make ev
45 // Layout to display the content of the section. 43 // Layout to display the content of the section.
46 @property(nonatomic, assign, readonly) ContentSuggestionsSectionLayout layout; 44 @property(nonatomic, assign) ContentSuggestionsSectionLayout layout;
47 // ID of the section. Used for ordering. 45 // ID of the section. Used for ordering.
48 @property(nonatomic, assign, readonly) ContentSuggestionsSectionID ID; 46 @property(nonatomic, assign, readonly) ContentSuggestionsSectionID ID;
49 // Title for the section. 47 // Title for the section.
50 @property(nonatomic, copy, readonly) NSString* title; 48 @property(nonatomic, copy) NSString* title;
51 49
52 @end 50 @end
53 51
54 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_SECTION _INFORMATION_H_ 52 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTIONS_SECTION _INFORMATION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698