OLD | NEW |
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_SUGGESTION_H_ | 5 #ifndef IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTION_H_ |
6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTION_H_ | 6 #define IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTION_H_ |
7 | 7 |
8 #import <UIKit/UIKit.h> | 8 #import <UIKit/UIKit.h> |
9 | 9 |
10 #import "ios/chrome/browser/ui/content_suggestions/identifier/content_suggestion
_identifier.h" | 10 #import "ios/chrome/browser/ui/content_suggestions/identifier/content_suggestion
_identifier.h" |
11 | 11 |
12 namespace base { | 12 namespace base { |
13 class Time; | 13 class Time; |
14 } | 14 } |
15 | 15 |
16 class GURL; | 16 class GURL; |
17 | 17 |
18 // Enum defining the type of a ContentSuggestions. | 18 // Enum defining the type of a ContentSuggestions. |
19 typedef NS_ENUM(NSInteger, ContentSuggestionType) { | 19 typedef NS_ENUM(NSInteger, ContentSuggestionType) { |
| 20 // Use this type to pass information about an empty section. Suggestion of |
| 21 // this type are empty and should not be displayed. The informations to be |
| 22 // displayed are contained in the SectionInfo. |
| 23 ContentSuggestionTypeEmpty, |
20 ContentSuggestionTypeArticle | 24 ContentSuggestionTypeArticle |
21 }; | 25 }; |
22 | 26 |
23 // Data for a suggestions item, compatible with Objective-C. Mostly acts as a | 27 // Data for a suggestions item, compatible with Objective-C. Mostly acts as a |
24 // wrapper for ntp_snippets::ContentSuggestion. | 28 // wrapper for ntp_snippets::ContentSuggestion. |
25 @interface ContentSuggestion : NSObject<ContentSuggestionIdentification> | 29 @interface ContentSuggestion : NSObject<ContentSuggestionIdentification> |
26 | 30 |
27 // Title of the suggestion. | 31 // Title of the suggestion. |
28 @property(nonatomic, copy, nullable) NSString* title; | 32 @property(nonatomic, copy, nullable) NSString* title; |
29 // Text for the suggestion. | 33 // Text for the suggestion. |
30 @property(nonatomic, copy, nullable) NSString* text; | 34 @property(nonatomic, copy, nullable) NSString* text; |
31 // URL associated with the suggestion. | 35 // URL associated with the suggestion. |
32 @property(nonatomic, assign) GURL url; | 36 @property(nonatomic, assign) GURL url; |
33 // The name of the publisher. | 37 // The name of the publisher. |
34 @property(nonatomic, copy, nullable) NSString* publisher; | 38 @property(nonatomic, copy, nullable) NSString* publisher; |
35 // The date of publication. | 39 // The date of publication. |
36 @property(nonatomic, assign) base::Time publishDate; | 40 @property(nonatomic, assign) base::Time publishDate; |
37 | 41 |
38 @property(nonatomic, assign) ContentSuggestionType type; | 42 @property(nonatomic, assign) ContentSuggestionType type; |
39 | 43 |
40 @end | 44 @end |
41 | 45 |
42 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTION_H_ | 46 #endif // IOS_CHROME_BROWSER_UI_CONTENT_SUGGESTIONS_CONTENT_SUGGESTION_H_ |
OLD | NEW |