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_WEB_PUBLIC_NAVIGATION_ITEM_H_ | 5 #ifndef IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |
6 #define IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ | 6 #define IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/strings/string16.h" | 9 #include "base/strings/string16.h" |
10 #include "base/time/time.h" | 10 #include "base/time/time.h" |
11 #include "ios/web/public/web_state/page_scroll_state.h" | 11 #include "ios/web/public/web_state/page_scroll_state.h" |
12 #include "ui/base/page_transition_types.h" | 12 #include "ui/base/page_transition_types.h" |
13 | 13 |
14 class GURL; | 14 class GURL; |
15 | 15 |
| 16 #if defined(__OBJC__) |
| 17 @class NSDictionary; |
| 18 #else |
| 19 class NSDictionary; |
| 20 #endif // __OBJC__ |
| 21 |
16 namespace web { | 22 namespace web { |
17 struct FaviconStatus; | 23 struct FaviconStatus; |
18 struct Referrer; | 24 struct Referrer; |
19 struct SSLStatus; | 25 struct SSLStatus; |
20 | 26 |
21 // A NavigationItem is a data structure that captures all the information | 27 // A NavigationItem is a data structure that captures all the information |
22 // required to recreate a browsing state. It represents one point in the | 28 // required to recreate a browsing state. It represents one point in the |
23 // chain of navigation managed by a NavigationManager. | 29 // chain of navigation managed by a NavigationManager. |
24 class NavigationItem { | 30 class NavigationItem { |
25 public: | 31 public: |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 // - this navigation was restored and for some reason the | 113 // - this navigation was restored and for some reason the |
108 // timestamp wasn't available; | 114 // timestamp wasn't available; |
109 // - or this navigation was copied from a foreign session. | 115 // - or this navigation was copied from a foreign session. |
110 virtual void SetTimestamp(base::Time timestamp) = 0; | 116 virtual void SetTimestamp(base::Time timestamp) = 0; |
111 virtual base::Time GetTimestamp() const = 0; | 117 virtual base::Time GetTimestamp() const = 0; |
112 | 118 |
113 // |true| if this item contains unsafe resources and will be removed. This | 119 // |true| if this item contains unsafe resources and will be removed. This |
114 // property doesn't get serialized. | 120 // property doesn't get serialized. |
115 virtual void SetUnsafe(bool is_unsafe) = 0; | 121 virtual void SetUnsafe(bool is_unsafe) = 0; |
116 virtual bool IsUnsafe() const = 0; | 122 virtual bool IsUnsafe() const = 0; |
| 123 |
| 124 // |true| if this item uses a desktop user agent in HTTP requests and |
| 125 // UIWebView. |
| 126 virtual void SetIsOverridingUserAgent(bool is_overriding_user_agent) = 0; |
| 127 virtual bool IsOverridingUserAgent() const = 0; |
| 128 |
| 129 // |true| if this item is the result of a POST request with data. |
| 130 virtual bool HasPostData() const = 0; |
| 131 |
| 132 // Returns the item's current http request headers. |
| 133 virtual NSDictionary* GetHttpRequestHeaders() const = 0; |
| 134 |
| 135 // Adds headers from |additional_headers| to the item's http request headers. |
| 136 // Existing headers with the same key will be overridden. |
| 137 virtual void AddHttpRequestHeaders(NSDictionary* additional_headers) = 0; |
117 }; | 138 }; |
118 | 139 |
119 } // namespace web | 140 } // namespace web |
120 | 141 |
121 #endif // IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ | 142 #endif // IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |
OLD | NEW |