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

Side by Side Diff: ios/web/navigation/crw_session_controller.h

Issue 2672953005: Updated ownership of NavigationItems within CRWSessionController. (Closed)
Patch Set: eugene's comments 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 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 "ios/web/public/navigation_item_list.h" 11 #import "ios/web/navigation/navigation_item_impl_list.h"
12 #include "ui/base/page_transition_types.h" 12 #include "ui/base/page_transition_types.h"
13 #include "url/gurl.h" 13 #include "url/gurl.h"
14 14
15 @class CRWSessionEntry; 15 @class CRWSessionEntry;
16 @class CRWSessionCertificatePolicyManager; 16 @class CRWSessionCertificatePolicyManager;
17 17
18 namespace web { 18 namespace web {
19 class BrowserState; 19 class BrowserState;
20 class NavigationItemImpl; 20 class NavigationItemImpl;
21 class NavigationManagerImpl; 21 class NavigationManagerImpl;
(...skipping 17 matching lines...) Expand all
39 @property(nonatomic, copy) NSString* windowName; 39 @property(nonatomic, copy) NSString* windowName;
40 // Indicates whether the page was opened by DOM (e.g. with |window.open| 40 // Indicates whether the page was opened by DOM (e.g. with |window.open|
41 // JavaScript call or by clicking a link with |_blank| target). 41 // JavaScript call or by clicking a link with |_blank| target).
42 @property(nonatomic, readonly, getter=isOpenedByDOM) BOOL openedByDOM; 42 @property(nonatomic, readonly, getter=isOpenedByDOM) BOOL openedByDOM;
43 @property(nonatomic, readonly, strong) 43 @property(nonatomic, readonly, strong)
44 CRWSessionCertificatePolicyManager* sessionCertificatePolicyManager; 44 CRWSessionCertificatePolicyManager* sessionCertificatePolicyManager;
45 @property(nonatomic, assign) NSTimeInterval lastVisitedTimestamp; 45 @property(nonatomic, assign) NSTimeInterval lastVisitedTimestamp;
46 @property(nonatomic, readonly, copy) NSString* openerId; 46 @property(nonatomic, readonly, copy) NSString* openerId;
47 @property(nonatomic, readonly, assign) NSInteger openerNavigationIndex; 47 @property(nonatomic, readonly, assign) NSInteger openerNavigationIndex;
48 48
49 // The list of CRWSessionEntries in |_entries|'s NavigationItemImpls. 49 // The ScopedNavigationItemImplList used to store the NavigationItemImpls for
50 @property(nonatomic, readonly) web::NavigationItemList items; 50 // this session.
51 @property(nonatomic, readonly) const web::ScopedNavigationItemImplList& items;
51 // The current NavigationItem. During a pending navigation, returns the 52 // The current NavigationItem. During a pending navigation, returns the
52 // NavigationItem for that navigation. If a transient NavigationItem exists, 53 // NavigationItem for that navigation. If a transient NavigationItem exists,
53 // this NavigationItem will be returned. 54 // this NavigationItem will be returned.
54 @property(nonatomic, readonly) web::NavigationItemImpl* currentItem; 55 @property(nonatomic, readonly) web::NavigationItemImpl* currentItem;
55 // Returns the NavigationItem whose URL should be displayed to the user. 56 // Returns the NavigationItem whose URL should be displayed to the user.
56 @property(nonatomic, readonly) web::NavigationItemImpl* visibleItem; 57 @property(nonatomic, readonly) web::NavigationItemImpl* visibleItem;
57 // Returns the NavigationItem corresponding to a load for which no data has yet 58 // Returns the NavigationItem corresponding to a load for which no data has yet
58 // been received. 59 // been received.
59 @property(nonatomic, readonly) web::NavigationItemImpl* pendingItem; 60 @property(nonatomic, readonly) web::NavigationItemImpl* pendingItem;
60 // Returns the NavigationItem corresponding with a transient navigation (i.e. 61 // Returns the NavigationItem corresponding with a transient navigation (i.e.
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 // Set |useDesktopUserAgentForNextPendingItem_| to YES if there is no pending 157 // Set |useDesktopUserAgentForNextPendingItem_| to YES if there is no pending
157 // entry, otherwise set |useDesktopUserAgent| in the pending entry. 158 // entry, otherwise set |useDesktopUserAgent| in the pending entry.
158 - (void)useDesktopUserAgentForNextPendingItem; 159 - (void)useDesktopUserAgentForNextPendingItem;
159 160
160 // Returns the index of |item| in |items|. 161 // Returns the index of |item| in |items|.
161 - (NSInteger)indexOfItem:(web::NavigationItem*)item; 162 - (NSInteger)indexOfItem:(web::NavigationItem*)item;
162 163
163 @end 164 @end
164 165
165 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ 166 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698