frame_navigate_params.h revision 7dbb3d5cf0c15f500944d211057644d6a2f37371
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. 4 5#ifndef CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_ 6#define CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_ 7 8#include <string> 9#include <vector> 10 11#include "content/common/content_export.h" 12#include "content/public/common/page_transition_types.h" 13#include "content/public/common/password_form.h" 14#include "content/public/common/referrer.h" 15#include "net/base/host_port_pair.h" 16#include "url/gurl.h" 17 18namespace content { 19 20// Struct used by WebContentsObserver. 21struct CONTENT_EXPORT FrameNavigateParams { 22 FrameNavigateParams(); 23 ~FrameNavigateParams(); 24 25 // Page ID of this navigation. The renderer creates a new unique page ID 26 // anytime a new session history entry is created. This means you'll get new 27 // page IDs for user actions, and the old page IDs will be reloaded when 28 // iframes are loaded automatically. 29 int32 page_id; 30 31 // URL of the page being loaded. 32 GURL url; 33 34 // The base URL for the page's document when the frame was committed. Empty if 35 // similar to 'url' above. Note that any base element in the page has not been 36 // parsed yet and is therefore not reflected. 37 // This is of interest when a MHTML file is loaded, as the base URL has been 38 // set to original URL of the site the MHTML represents. 39 GURL base_url; 40 41 // URL of the referrer of this load. WebKit generates this based on the 42 // source of the event that caused the load. 43 content::Referrer referrer; 44 45 // The type of transition. 46 PageTransition transition; 47 48 // Lists the redirects that occurred on the way to the current page. This 49 // vector has the same format as reported by the WebDataSource in the glue, 50 // with the current page being the last one in the list (so even when 51 // there's no redirect, there will be one entry in the list. 52 std::vector<GURL> redirects; 53 54 // Set to false if we want to update the session history but not update 55 // the browser history. E.g., on unreachable urls. 56 bool should_update_history; 57 58 // See SearchableFormData for a description of these. 59 GURL searchable_form_url; 60 std::string searchable_form_encoding; 61 62 // See password_form.h. 63 content::PasswordForm password_form; 64 65 // Contents MIME type of main frame. 66 std::string contents_mime_type; 67 68 // Remote address of the socket which fetched this resource. 69 net::HostPortPair socket_address; 70}; 71 72} // namespace content 73 74#endif // CONTENT_PUBLIC_COMMON_FRAME_NAVIGATE_PARAMS_H_ 75