Chromium Code Reviews| Index: ios/web/public/navigation_item.h |
| diff --git a/ios/web/public/navigation_item.h b/ios/web/public/navigation_item.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..8a512b631d37396a70b7e2c1841b6f7b89ab441e |
| --- /dev/null |
| +++ b/ios/web/public/navigation_item.h |
| @@ -0,0 +1,44 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |
| +#define IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |
| + |
| +#include "ui/base/page_transition_types.h" |
| + |
| +class GURL; |
| + |
| +namespace web { |
| + |
| +// A NavigationItem is a data structure that captures all the information |
| +// required to recreate a browsing state. It represents one point in the |
| +// chain of navigation managed by a NavigationManager. |
| +class NavigationItem { |
| + public: |
| + virtual ~NavigationItem() {} |
| + |
| + // The actual URL of the page. For some about pages, this may be a scary |
| + // data: URL or something like that. Use GetVirtualURL() below for showing to |
| + // the user. |
| + virtual const GURL& GetURL() const = 0; |
| + |
| + // The URL that should be shown to the user. In most cases this is the same |
| + // as the URL above, but in some case the underlying URL might not be |
| + // suitable for display to the user. |
| + virtual const GURL& GetVirtualURL() const = 0; |
| + |
| + // The title as set by the page. This will be empty if there is no title set. |
| + // The caller is responsible for detecting when there is no title and |
| + // displaying the appropriate "Untitled" label if this is being displayed to |
| + // the user. |
| + virtual const base::string16& GetTitle() const = 0; |
|
stuartmorgan
2014/10/09 20:39:35
Looks like we're missing a string16.h include, and
rohitrao (ping after 24h)
2014/10/09 20:52:53
Done.
|
| + |
| + // The transition type indicates what the user did to move to this page from |
| + // the previous page. |
| + virtual ui::PageTransition GetTransitionType() const = 0; |
| +}; |
| + |
| +} // namespace web |
| + |
| +#endif // IOS_WEB_PUBLIC_NAVIGATION_ITEM_H_ |