OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ | 5 #ifndef IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ |
6 #define IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ | 6 #define IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ |
7 | 7 |
8 #import <Foundation/Foundation.h> | 8 #import <Foundation/Foundation.h> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "ui/base/page_transition_types.h" | 11 #include "ui/base/page_transition_types.h" |
12 #include "url/gurl.h" | 12 #include "url/gurl.h" |
13 | 13 |
14 @class CRWSessionEntry; | 14 @class CRWSessionEntry; |
15 @class CRWSessionCertificatePolicyManager; | 15 @class CRWSessionCertificatePolicyManager; |
16 @class XCallbackParameters; | |
17 | 16 |
18 namespace web { | 17 namespace web { |
19 class NavigationManagerImpl; | 18 class NavigationManagerImpl; |
20 struct Referrer; | 19 struct Referrer; |
21 struct SSLStatus; | 20 struct SSLStatus; |
22 } | 21 } |
23 | 22 |
24 // A CRWSessionController is similar to a NavigationController object in desktop | 23 // A CRWSessionController is similar to a NavigationController object in desktop |
25 // Chrome. It maintains information needed to save/restore a tab with its | 24 // Chrome. It maintains information needed to save/restore a tab with its |
26 // complete session history. There is one of these for each tab. | 25 // complete session history. There is one of these for each tab. |
(...skipping 20 matching lines...) Expand all Loading... |
47 @property(nonatomic, readonly, strong) CRWSessionEntry* pendingEntry; | 46 @property(nonatomic, readonly, strong) CRWSessionEntry* pendingEntry; |
48 // Returns the transient entry, if any. | 47 // Returns the transient entry, if any. |
49 @property(nonatomic, readonly, strong) CRWSessionEntry* transientEntry; | 48 @property(nonatomic, readonly, strong) CRWSessionEntry* transientEntry; |
50 // Returns the last committed entry. | 49 // Returns the last committed entry. |
51 @property(nonatomic, readonly, strong) CRWSessionEntry* lastCommittedEntry; | 50 @property(nonatomic, readonly, strong) CRWSessionEntry* lastCommittedEntry; |
52 // Returns the previous entry in the session list, or nil if there isn't any. | 51 // Returns the previous entry in the session list, or nil if there isn't any. |
53 @property(nonatomic, readonly, strong) CRWSessionEntry* previousEntry; | 52 @property(nonatomic, readonly, strong) CRWSessionEntry* previousEntry; |
54 @property(nonatomic, assign) NSTimeInterval lastVisitedTimestamp; | 53 @property(nonatomic, assign) NSTimeInterval lastVisitedTimestamp; |
55 @property(nonatomic, readonly, copy) NSString* openerId; | 54 @property(nonatomic, readonly, copy) NSString* openerId; |
56 @property(nonatomic, readonly, assign) NSInteger openerNavigationIndex; | 55 @property(nonatomic, readonly, assign) NSInteger openerNavigationIndex; |
57 @property(nonatomic, strong) XCallbackParameters* xCallbackParameters; | |
58 | 56 |
59 // CRWSessionController doesn't have public constructors. New | 57 // CRWSessionController doesn't have public constructors. New |
60 // CRWSessionControllers are created by deserialization, or via a | 58 // CRWSessionControllers are created by deserialization, or via a |
61 // NavigationManager. | 59 // NavigationManager. |
62 | 60 |
63 // Sets the corresponding NavigationManager. | 61 // Sets the corresponding NavigationManager. |
64 - (void)setNavigationManager:(web::NavigationManagerImpl*)navigationManager; | 62 - (void)setNavigationManager:(web::NavigationManagerImpl*)navigationManager; |
65 | 63 |
66 // Add a new entry with the given url, referrer, and navigation type, making it | 64 // Add a new entry with the given url, referrer, and navigation type, making it |
67 // the current entry. If |url| is the same as the current entry's url, this | 65 // the current entry. If |url| is the same as the current entry's url, this |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 // |entries_| is empty. | 148 // |entries_| is empty. |
151 - (CRWSessionEntry*)lastUserEntry; | 149 - (CRWSessionEntry*)lastUserEntry; |
152 | 150 |
153 // Set |useDesktopUserAgentForNextPendingEntry_| to YES if there is no pending | 151 // Set |useDesktopUserAgentForNextPendingEntry_| to YES if there is no pending |
154 // entry, otherwise set |useDesktopUserAgent| in the pending entry. | 152 // entry, otherwise set |useDesktopUserAgent| in the pending entry. |
155 - (void)useDesktopUserAgentForNextPendingEntry; | 153 - (void)useDesktopUserAgentForNextPendingEntry; |
156 | 154 |
157 @end | 155 @end |
158 | 156 |
159 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ | 157 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ |
OLD | NEW |