1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_
6 #define CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_
11 #include "content/common/content_export.h"
12 #include "content/public/common/referrer.h"
13 #include "net/base/host_port_pair.h"
14 #include "ui/base/page_transition_types.h"
19 // Struct used by WebContentsObserver.
20 struct CONTENT_EXPORT FrameNavigateParams
{
21 FrameNavigateParams();
22 ~FrameNavigateParams();
24 // Page ID of this navigation. The renderer creates a new unique page ID
25 // anytime a new session history entry is created. This means you'll get new
26 // page IDs for user actions, and the old page IDs will be reloaded when
27 // iframes are loaded automatically.
30 // URL of the page being loaded.
33 // The base URL for the page's document when the frame was committed. Empty if
34 // similar to 'url' above. Note that any base element in the page has not been
35 // parsed yet and is therefore not reflected.
36 // This is of interest when a MHTML file is loaded, as the base URL has been
37 // set to original URL of the site the MHTML represents.
40 // URL of the referrer of this load. WebKit generates this based on the
41 // source of the event that caused the load.
42 content::Referrer referrer
;
44 // The type of transition.
45 ui::PageTransition transition
;
47 // Lists the redirects that occurred on the way to the current page. This
48 // vector has the same format as reported by the WebDataSource in the glue,
49 // with the current page being the last one in the list (so even when
50 // there's no redirect, there will be one entry in the list.
51 std::vector
<GURL
> redirects
;
53 // Set to false if we want to update the session history but not update
54 // the browser history. E.g., on unreachable urls.
55 bool should_update_history
;
57 // See SearchableFormData for a description of these.
58 GURL searchable_form_url
;
59 std::string searchable_form_encoding
;
61 // Contents MIME type of main frame.
62 std::string contents_mime_type
;
64 // Remote address of the socket which fetched this resource.
65 net::HostPortPair socket_address
;
68 } // namespace content
70 #endif // CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_