OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ |
6 #define CONTENT_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ | 6 #define CONTENT_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ |
7 | 7 |
| 8 #include "base/time/time.h" |
8 #include "content/common/content_export.h" | 9 #include "content/common/content_export.h" |
9 #include "content/public/browser/navigation_throttle.h" | 10 #include "content/public/browser/navigation_throttle.h" |
10 #include "content/public/common/referrer.h" | 11 #include "content/public/common/referrer.h" |
11 #include "net/base/net_errors.h" | 12 #include "net/base/net_errors.h" |
12 #include "ui/base/page_transition_types.h" | 13 #include "ui/base/page_transition_types.h" |
13 | 14 |
14 class GURL; | 15 class GURL; |
15 | 16 |
16 namespace content { | 17 namespace content { |
17 class NavigationThrottle; | 18 class NavigationThrottle; |
(...skipping 14 matching lines...) Expand all Loading... |
32 // when encountering a server redirect. | 33 // when encountering a server redirect. |
33 virtual const GURL& GetURL() = 0; | 34 virtual const GURL& GetURL() = 0; |
34 | 35 |
35 // Whether the navigation is taking place in the main frame or in a subframe. | 36 // Whether the navigation is taking place in the main frame or in a subframe. |
36 // This remains constant over the navigation lifetime. | 37 // This remains constant over the navigation lifetime. |
37 virtual bool IsInMainFrame() = 0; | 38 virtual bool IsInMainFrame() = 0; |
38 | 39 |
39 // The WebContents the navigation is taking place in. | 40 // The WebContents the navigation is taking place in. |
40 WebContents* GetWebContents(); | 41 WebContents* GetWebContents(); |
41 | 42 |
| 43 // The time the navigation started, recorded either in the renderer or browser |
| 44 // process. Corresponds to Navigation Timing API Standard. |
| 45 virtual const base::TimeTicks& GetNavigationStart() = 0; |
| 46 |
42 // Parameters available at network request start time ------------------------ | 47 // Parameters available at network request start time ------------------------ |
43 // | 48 // |
44 // The following parameters are only available when the network request is | 49 // The following parameters are only available when the network request is |
45 // made for the navigation (or at commit time if no network request is made). | 50 // made for the navigation (or at commit time if no network request is made). |
46 // This corresponds to NavigationThrottle::WillSendRequest. They should not | 51 // This corresponds to NavigationThrottle::WillSendRequest. They should not |
47 // be queried before that. | 52 // be queried before that. |
48 | 53 |
49 // Whether the navigation is a POST or a GET. This may change during the | 54 // Whether the navigation is a POST or a GET. This may change during the |
50 // navigation when encountering a server redirect. | 55 // navigation when encountering a server redirect. |
51 virtual bool IsPost() = 0; | 56 virtual bool IsPost() = 0; |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 virtual NavigationThrottle::ThrottleCheckResult | 128 virtual NavigationThrottle::ThrottleCheckResult |
124 CallWillRedirectRequestForTesting(const GURL& new_url, | 129 CallWillRedirectRequestForTesting(const GURL& new_url, |
125 bool new_method_is_post, | 130 bool new_method_is_post, |
126 const GURL& new_referrer_url, | 131 const GURL& new_referrer_url, |
127 bool new_is_external_protocol) = 0; | 132 bool new_is_external_protocol) = 0; |
128 }; | 133 }; |
129 | 134 |
130 } // namespace content | 135 } // namespace content |
131 | 136 |
132 #endif // CONTENT_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ | 137 #endif // CONTENT_PUBLIC_BROWSER_NAVIGATION_HANDLE_H_ |
OLD | NEW |