OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ | 5 #ifndef CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ |
6 #define CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ | 6 #define CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
13 #include "content/common/content_export.h" | 13 #include "content/common/content_export.h" |
14 #include "content/public/common/page_transition_types.h" | 14 #include "content/public/common/page_transition_types.h" |
15 #include "content/public/common/page_type.h" | 15 #include "content/public/common/page_type.h" |
| 16 #include "content/public/common/referrer.h" |
16 #include "content/public/common/security_style.h" | 17 #include "content/public/common/security_style.h" |
17 #include "googleurl/src/gurl.h" | 18 #include "googleurl/src/gurl.h" |
18 #include "net/base/cert_status_flags.h" | 19 #include "net/base/cert_status_flags.h" |
19 #include "third_party/skia/include/core/SkBitmap.h" | 20 #include "third_party/skia/include/core/SkBitmap.h" |
20 | 21 |
21 class SiteInstance; | 22 class SiteInstance; |
22 | 23 |
23 //////////////////////////////////////////////////////////////////////////////// | 24 //////////////////////////////////////////////////////////////////////////////// |
24 // | 25 // |
25 // NavigationEntry class | 26 // NavigationEntry class |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
177 | 178 |
178 // Copy and assignment is explicitly allowed for this class. | 179 // Copy and assignment is explicitly allowed for this class. |
179 }; | 180 }; |
180 | 181 |
181 // --------------------------------------------------------------------------- | 182 // --------------------------------------------------------------------------- |
182 | 183 |
183 NavigationEntry(); | 184 NavigationEntry(); |
184 NavigationEntry(SiteInstance* instance, | 185 NavigationEntry(SiteInstance* instance, |
185 int page_id, | 186 int page_id, |
186 const GURL& url, | 187 const GURL& url, |
187 const GURL& referrer, | 188 const content::Referrer& referrer, |
188 const string16& title, | 189 const string16& title, |
189 content::PageTransition transition_type, | 190 content::PageTransition transition_type, |
190 bool is_renderer_initiated); | 191 bool is_renderer_initiated); |
191 ~NavigationEntry(); | 192 ~NavigationEntry(); |
192 | 193 |
193 // Page-related stuff -------------------------------------------------------- | 194 // Page-related stuff -------------------------------------------------------- |
194 | 195 |
195 // A unique ID is preserved across commits and redirects, which means that | 196 // A unique ID is preserved across commits and redirects, which means that |
196 // sometimes a NavigationEntry's unique ID needs to be set (e.g. when | 197 // sometimes a NavigationEntry's unique ID needs to be set (e.g. when |
197 // creating a committed entry to correspond to a to-be-deleted pending entry, | 198 // creating a committed entry to correspond to a to-be-deleted pending entry, |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
229 // the user. | 230 // the user. |
230 void set_url(const GURL& url) { | 231 void set_url(const GURL& url) { |
231 url_ = url; | 232 url_ = url; |
232 cached_display_title_.clear(); | 233 cached_display_title_.clear(); |
233 } | 234 } |
234 const GURL& url() const { | 235 const GURL& url() const { |
235 return url_; | 236 return url_; |
236 } | 237 } |
237 | 238 |
238 // The referring URL. Can be empty. | 239 // The referring URL. Can be empty. |
239 void set_referrer(const GURL& referrer) { | 240 void set_referrer(const content::Referrer& referrer) { |
240 referrer_ = referrer; | 241 referrer_ = referrer; |
241 } | 242 } |
242 const GURL& referrer() const { | 243 const content::Referrer& referrer() const { |
243 return referrer_; | 244 return referrer_; |
244 } | 245 } |
245 | 246 |
246 // The virtual URL, when nonempty, will override the actual URL of the page | 247 // The virtual URL, when nonempty, will override the actual URL of the page |
247 // when we display it to the user. This allows us to have nice and friendly | 248 // when we display it to the user. This allows us to have nice and friendly |
248 // URLs that the user sees for things like about: URLs, but actually feed | 249 // URLs that the user sees for things like about: URLs, but actually feed |
249 // the renderer a data URL that results in the content loading. | 250 // the renderer a data URL that results in the content loading. |
250 // | 251 // |
251 // virtual_url() will return the URL to display to the user in all cases, so | 252 // virtual_url() will return the URL to display to the user in all cases, so |
252 // if there is no overridden display URL, it will return the actual one. | 253 // if there is no overridden display URL, it will return the actual one. |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
417 // Session/Tab restore save portions of this class so that it can be recreated | 418 // Session/Tab restore save portions of this class so that it can be recreated |
418 // later. If you add a new field that needs to be persisted you'll have to | 419 // later. If you add a new field that needs to be persisted you'll have to |
419 // update SessionService/TabRestoreService appropriately. | 420 // update SessionService/TabRestoreService appropriately. |
420 // WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING | 421 // WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
421 | 422 |
422 // See the accessors above for descriptions. | 423 // See the accessors above for descriptions. |
423 int unique_id_; | 424 int unique_id_; |
424 scoped_refptr<SiteInstance> site_instance_; | 425 scoped_refptr<SiteInstance> site_instance_; |
425 content::PageType page_type_; | 426 content::PageType page_type_; |
426 GURL url_; | 427 GURL url_; |
427 GURL referrer_; | 428 content::Referrer referrer_; |
428 GURL virtual_url_; | 429 GURL virtual_url_; |
429 bool update_virtual_url_with_url_; | 430 bool update_virtual_url_with_url_; |
430 string16 title_; | 431 string16 title_; |
431 FaviconStatus favicon_; | 432 FaviconStatus favicon_; |
432 std::string content_state_; | 433 std::string content_state_; |
433 int32 page_id_; | 434 int32 page_id_; |
434 SSLStatus ssl_; | 435 SSLStatus ssl_; |
435 content::PageTransition transition_type_; | 436 content::PageTransition transition_type_; |
436 GURL user_typed_url_; | 437 GURL user_typed_url_; |
437 bool has_post_data_; | 438 bool has_post_data_; |
(...skipping 10 matching lines...) Expand all Loading... |
448 // This is a cached version of the result of GetTitleForDisplay. It prevents | 449 // This is a cached version of the result of GetTitleForDisplay. It prevents |
449 // us from having to do URL formatting on the URL every time the title is | 450 // us from having to do URL formatting on the URL every time the title is |
450 // displayed. When the URL, virtual URL, or title is set, this should be | 451 // displayed. When the URL, virtual URL, or title is set, this should be |
451 // cleared to force a refresh. | 452 // cleared to force a refresh. |
452 mutable string16 cached_display_title_; | 453 mutable string16 cached_display_title_; |
453 | 454 |
454 // Copy and assignment is explicitly allowed for this class. | 455 // Copy and assignment is explicitly allowed for this class. |
455 }; | 456 }; |
456 | 457 |
457 #endif // CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ | 458 #endif // CONTENT_BROWSER_TAB_CONTENTS_NAVIGATION_ENTRY_H_ |
OLD | NEW |