| 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 #import "ios/web/navigation/navigation_item_impl_list.h" | 11 #import "ios/web/navigation/navigation_item_impl_list.h" |
| 12 #import "ios/web/public/navigation_manager.h" |
| 12 #include "ui/base/page_transition_types.h" | 13 #include "ui/base/page_transition_types.h" |
| 13 #include "url/gurl.h" | 14 #include "url/gurl.h" |
| 14 | 15 |
| 15 @class CRWSessionCertificatePolicyManager; | 16 @class CRWSessionCertificatePolicyManager; |
| 16 | 17 |
| 17 namespace web { | 18 namespace web { |
| 18 class BrowserState; | 19 class BrowserState; |
| 19 class NavigationItemImpl; | 20 class NavigationItemImpl; |
| 20 class NavigationManagerImpl; | 21 class NavigationManagerImpl; |
| 21 enum class NavigationInitiationType; | 22 enum class NavigationInitiationType; |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 74 | 75 |
| 75 // CRWSessionController doesn't have public constructors. New | 76 // CRWSessionController doesn't have public constructors. New |
| 76 // CRWSessionControllers are created by deserialization, or via a | 77 // CRWSessionControllers are created by deserialization, or via a |
| 77 // NavigationManager. | 78 // NavigationManager. |
| 78 | 79 |
| 79 // Sets the corresponding NavigationManager. | 80 // Sets the corresponding NavigationManager. |
| 80 - (void)setNavigationManager:(web::NavigationManagerImpl*)navigationManager; | 81 - (void)setNavigationManager:(web::NavigationManagerImpl*)navigationManager; |
| 81 // Sets the corresponding BrowserState. | 82 // Sets the corresponding BrowserState. |
| 82 - (void)setBrowserState:(web::BrowserState*)browserState; | 83 - (void)setBrowserState:(web::BrowserState*)browserState; |
| 83 | 84 |
| 84 // Add a new item with the given url, referrer, and navigation type, making it | 85 // Add a new item with the given url, referrer, navigation type and user agent |
| 85 // the current item. If pending item is the same as current item, this does | 86 // override option, making it the current item. If pending item is the same as |
| 86 // nothing. |referrer| may be nil if there isn't one. The item starts out as | 87 // current item, this does nothing. |referrer| may be nil if there isn't one. |
| 87 // pending, and will be lost unless |-commitPendingItem| is called. | 88 // The item starts out as pending, and will be lost unless |-commitPendingItem| |
| 89 // is called. |
| 88 - (void)addPendingItem:(const GURL&)url | 90 - (void)addPendingItem:(const GURL&)url |
| 89 referrer:(const web::Referrer&)referrer | 91 referrer:(const web::Referrer&)referrer |
| 90 transition:(ui::PageTransition)type | 92 transition:(ui::PageTransition)type |
| 91 initiationType:(web::NavigationInitiationType)initiationType; | 93 initiationType:(web::NavigationInitiationType)initiationType |
| 94 userAgentOverrideOption:(web::NavigationManager::UserAgentOverrideOption) |
| 95 userAgentOverrideOption; |
| 92 | 96 |
| 93 // Updates the URL of the yet to be committed pending item. Useful for page | 97 // Updates the URL of the yet to be committed pending item. Useful for page |
| 94 // redirects. Does nothing if there is no pending item. | 98 // redirects. Does nothing if there is no pending item. |
| 95 - (void)updatePendingItem:(const GURL&)url; | 99 - (void)updatePendingItem:(const GURL&)url; |
| 96 | 100 |
| 97 // Commits the current pending item. No changes are made to the item during | 101 // Commits the current pending item. No changes are made to the item during |
| 98 // this process, it is just moved from pending to committed. | 102 // this process, it is just moved from pending to committed. |
| 99 // TODO(pinkerton): Desktop Chrome broadcasts a notification here, should we? | 103 // TODO(pinkerton): Desktop Chrome broadcasts a notification here, should we? |
| 100 - (void)commitPendingItem; | 104 - (void)commitPendingItem; |
| 101 | 105 |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 148 | 152 |
| 149 // Returns the index of |item| in |items|. | 153 // Returns the index of |item| in |items|. |
| 150 - (NSInteger)indexOfItem:(const web::NavigationItem*)item; | 154 - (NSInteger)indexOfItem:(const web::NavigationItem*)item; |
| 151 | 155 |
| 152 // Returns the item at |index| in |items|. | 156 // Returns the item at |index| in |items|. |
| 153 - (web::NavigationItemImpl*)itemAtIndex:(NSInteger)index; | 157 - (web::NavigationItemImpl*)itemAtIndex:(NSInteger)index; |
| 154 | 158 |
| 155 @end | 159 @end |
| 156 | 160 |
| 157 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ | 161 #endif // IOS_WEB_NAVIGATION_CRW_SESSION_CONTROLLER_H_ |
| OLD | NEW |