OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 5 #ifndef CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
6 #define CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 6 #define CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 | 68 |
69 namespace blink { | 69 namespace blink { |
70 namespace mojom { | 70 namespace mojom { |
71 class WebBluetoothService; | 71 class WebBluetoothService; |
72 } | 72 } |
73 } | 73 } |
74 | 74 |
75 namespace content { | 75 namespace content { |
76 | 76 |
77 class CrossProcessFrameConnector; | 77 class CrossProcessFrameConnector; |
78 class CrossSiteTransferringRequest; | |
79 class FrameTree; | 78 class FrameTree; |
80 class FrameTreeNode; | 79 class FrameTreeNode; |
81 class NavigationHandleImpl; | 80 class NavigationHandleImpl; |
82 class PermissionServiceContext; | 81 class PermissionServiceContext; |
83 class RenderFrameHostDelegate; | 82 class RenderFrameHostDelegate; |
84 class RenderFrameProxyHost; | 83 class RenderFrameProxyHost; |
85 class RenderProcessHost; | 84 class RenderProcessHost; |
86 class RenderViewHostImpl; | 85 class RenderViewHostImpl; |
87 class RenderWidgetHostDelegate; | 86 class RenderWidgetHostDelegate; |
88 class RenderWidgetHostImpl; | 87 class RenderWidgetHostImpl; |
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
333 // RenderFrameHost. | 332 // RenderFrameHost. |
334 void SetNavigationHandle( | 333 void SetNavigationHandle( |
335 std::unique_ptr<NavigationHandleImpl> navigation_handle); | 334 std::unique_ptr<NavigationHandleImpl> navigation_handle); |
336 | 335 |
337 // Gives the ownership of |navigation_handle_| to the caller. | 336 // Gives the ownership of |navigation_handle_| to the caller. |
338 // This happens during transfer navigations, where it should be transferred | 337 // This happens during transfer navigations, where it should be transferred |
339 // from the RenderFrameHost that issued the initial request to the new | 338 // from the RenderFrameHost that issued the initial request to the new |
340 // RenderFrameHost that will issue the transferring request. | 339 // RenderFrameHost that will issue the transferring request. |
341 std::unique_ptr<NavigationHandleImpl> PassNavigationHandleOwnership(); | 340 std::unique_ptr<NavigationHandleImpl> PassNavigationHandleOwnership(); |
342 | 341 |
343 // Called on the pending RenderFrameHost when the network response is ready to | |
344 // commit. We should ensure that the old RenderFrameHost runs its unload | |
345 // handler and determine whether a transfer to a different RenderFrameHost is | |
346 // needed. | |
347 void OnCrossSiteResponse(const GlobalRequestID& global_request_id, | |
348 std::unique_ptr<CrossSiteTransferringRequest> | |
349 cross_site_transferring_request, | |
350 const std::vector<GURL>& transfer_url_chain, | |
351 const Referrer& referrer, | |
352 ui::PageTransition page_transition, | |
353 bool should_replace_current_entry); | |
354 | |
355 // Tells the renderer that this RenderFrame is being swapped out for one in a | 342 // Tells the renderer that this RenderFrame is being swapped out for one in a |
356 // different renderer process. It should run its unload handler and move to | 343 // different renderer process. It should run its unload handler and move to |
357 // a blank document. If |proxy| is not null, it should also create a | 344 // a blank document. If |proxy| is not null, it should also create a |
358 // RenderFrameProxy to replace the RenderFrame and set it to |is_loading| | 345 // RenderFrameProxy to replace the RenderFrame and set it to |is_loading| |
359 // state. The renderer should preserve the RenderFrameProxy object until it | 346 // state. The renderer should preserve the RenderFrameProxy object until it |
360 // exits, in case we come back. The renderer can exit if it has no other | 347 // exits, in case we come back. The renderer can exit if it has no other |
361 // active RenderFrames, but not until WasSwappedOut is called. | 348 // active RenderFrames, but not until WasSwappedOut is called. |
362 void SwapOut(RenderFrameProxyHost* proxy, bool is_loading); | 349 void SwapOut(RenderFrameProxyHost* proxy, bool is_loading); |
363 | 350 |
364 // Whether an ongoing navigation is waiting for a BeforeUnload ACK from the | 351 // Whether an ongoing navigation is waiting for a BeforeUnload ACK from the |
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1057 | 1044 |
1058 // NOTE: This must be the last member. | 1045 // NOTE: This must be the last member. |
1059 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; | 1046 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; |
1060 | 1047 |
1061 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); | 1048 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); |
1062 }; | 1049 }; |
1063 | 1050 |
1064 } // namespace content | 1051 } // namespace content |
1065 | 1052 |
1066 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 1053 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
OLD | NEW |