OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ | 5 #ifndef IOS_CHROME_BROWSER_UI_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ |
6 #define IOS_CHROME_BROWSER_UI_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ | 6 #define IOS_CHROME_BROWSER_UI_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ |
7 | 7 |
8 #import <UIKit/UIKit.h> | 8 #import <UIKit/UIKit.h> |
9 | 9 |
10 // View controller for displaying a list of CRWSessionEntry objects in a table. | 10 #include "ios/web/public/navigation_item_list.h" |
| 11 |
| 12 // View controller for displaying a list of NavigationItems in a table. |
11 @interface TabHistoryViewController : UICollectionViewController | 13 @interface TabHistoryViewController : UICollectionViewController |
12 | 14 |
13 // TODO(crbug.com/546355): Convert this class to use an array of | 15 // Designated initializer that takes a NavigationItemList. |
14 // NavigationEntries. | 16 - (instancetype)initWithItems:(const web::NavigationItemList&)items |
15 @property(nonatomic, strong) NSArray* sessionEntries; | 17 NS_DESIGNATED_INITIALIZER; |
| 18 |
| 19 // TabHistoryViewControllers must be initialized with |-initWithItems:|. |
| 20 - (instancetype)initWithCoder:(NSCoder*)aDecoder NS_UNAVAILABLE; |
| 21 - (instancetype)initWithCollectionViewLayout:(UICollectionViewLayout*)layout |
| 22 NS_UNAVAILABLE; |
| 23 - (instancetype)initWithNibName:(NSString*)nibNameOrNil |
| 24 bundle:(NSBundle*)nibBundleOrNil NS_UNAVAILABLE; |
16 | 25 |
17 // Returns the optimal height needed to display the session entries. | 26 // Returns the optimal height needed to display the session entries. |
18 // The height returned is usually less than the |suggestedHeight| unless | 27 // The height returned is usually less than the |suggestedHeight| unless |
19 // the last row of the table puts the height just over the |suggestedHeight|. | 28 // the last row of the table puts the height just over the |suggestedHeight|. |
20 // If the session entries table is taller than the |suggestedHeight| by at least | 29 // If the session entries table is taller than the |suggestedHeight| by at least |
21 // one row, the last visible session entry will be shown partially so the user | 30 // one row, the last visible session entry will be shown partially so the user |
22 // can tell that the table is scrollable. | 31 // can tell that the table is scrollable. |
23 - (CGFloat)optimalHeight:(CGFloat)suggestedHeight; | 32 - (CGFloat)optimalHeight:(CGFloat)suggestedHeight; |
24 | 33 |
25 @end | 34 @end |
26 | 35 |
27 #endif // IOS_CHROME_BROWSER_UI_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ | 36 #endif // IOS_CHROME_BROWSER_UI_HISTORY_TAB_HISTORY_VIEW_CONTROLLER_H_ |
OLD | NEW |