| 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 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 568 FrameTree* frame_tree, | 568 FrameTree* frame_tree, |
| 569 FrameTreeNode* frame_tree_node, | 569 FrameTreeNode* frame_tree_node, |
| 570 int32_t routing_id, | 570 int32_t routing_id, |
| 571 int32_t widget_routing_id, | 571 int32_t widget_routing_id, |
| 572 int flags); | 572 int flags); |
| 573 | 573 |
| 574 private: | 574 private: |
| 575 friend class TestRenderFrameHost; | 575 friend class TestRenderFrameHost; |
| 576 friend class TestRenderViewHost; | 576 friend class TestRenderViewHost; |
| 577 | 577 |
| 578 FRIEND_TEST_ALL_PREFIXES(RenderFrameHostManagerTest, |
| 579 CreateRenderViewAfterProcessKillAndClosedProxy); |
| 580 FRIEND_TEST_ALL_PREFIXES(RenderFrameHostManagerTest, |
| 581 RenderViewInitAfterNewProxyAndProcessKill); |
| 578 FRIEND_TEST_ALL_PREFIXES(SitePerProcessBrowserTest, CrashSubframe); | 582 FRIEND_TEST_ALL_PREFIXES(SitePerProcessBrowserTest, CrashSubframe); |
| 583 FRIEND_TEST_ALL_PREFIXES(SitePerProcessBrowserTest, |
| 584 RenderViewHostPendingDeletionIsNotReused); |
| 579 | 585 |
| 580 // IPC Message handlers. | 586 // IPC Message handlers. |
| 581 void OnAddMessageToConsole(int32_t level, | 587 void OnAddMessageToConsole(int32_t level, |
| 582 const base::string16& message, | 588 const base::string16& message, |
| 583 int32_t line_no, | 589 int32_t line_no, |
| 584 const base::string16& source_id); | 590 const base::string16& source_id); |
| 585 void OnDetach(); | 591 void OnDetach(); |
| 586 void OnFrameFocused(); | 592 void OnFrameFocused(); |
| 587 void OnOpenURL(const FrameHostMsg_OpenURL_Params& params); | 593 void OnOpenURL(const FrameHostMsg_OpenURL_Params& params); |
| 588 void OnDocumentOnLoadCompleted( | 594 void OnDocumentOnLoadCompleted( |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 726 const content::StartNavigationParams& start_params, | 732 const content::StartNavigationParams& start_params, |
| 727 const content::RequestNavigationParams& request_params); | 733 const content::RequestNavigationParams& request_params); |
| 728 | 734 |
| 729 // Returns the child FrameTreeNode if |child_frame_routing_id| is an | 735 // Returns the child FrameTreeNode if |child_frame_routing_id| is an |
| 730 // immediate child of this FrameTreeNode. |child_frame_routing_id| is | 736 // immediate child of this FrameTreeNode. |child_frame_routing_id| is |
| 731 // considered untrusted, so the renderer process is killed if it refers to a | 737 // considered untrusted, so the renderer process is killed if it refers to a |
| 732 // FrameTreeNode that is not a child of this node. | 738 // FrameTreeNode that is not a child of this node. |
| 733 FrameTreeNode* FindAndVerifyChild(int32_t child_frame_routing_id, | 739 FrameTreeNode* FindAndVerifyChild(int32_t child_frame_routing_id, |
| 734 bad_message::BadMessageReason reason); | 740 bad_message::BadMessageReason reason); |
| 735 | 741 |
| 742 // Allows tests to disable the swapout event timer to simulate bugs that |
| 743 // happen before it fires (to avoid flakiness). |
| 744 void ResetSwapOutTimerForTesting(); |
| 745 |
| 736 // For now, RenderFrameHosts indirectly keep RenderViewHosts alive via a | 746 // For now, RenderFrameHosts indirectly keep RenderViewHosts alive via a |
| 737 // refcount that calls Shutdown when it reaches zero. This allows each | 747 // refcount that calls Shutdown when it reaches zero. This allows each |
| 738 // RenderFrameHostManager to just care about RenderFrameHosts, while ensuring | 748 // RenderFrameHostManager to just care about RenderFrameHosts, while ensuring |
| 739 // we have a RenderViewHost for each RenderFrameHost. | 749 // we have a RenderViewHost for each RenderFrameHost. |
| 740 // TODO(creis): RenderViewHost will eventually go away and be replaced with | 750 // TODO(creis): RenderViewHost will eventually go away and be replaced with |
| 741 // some form of page context. | 751 // some form of page context. |
| 742 RenderViewHostImpl* render_view_host_; | 752 RenderViewHostImpl* render_view_host_; |
| 743 | 753 |
| 744 RenderFrameHostDelegate* delegate_; | 754 RenderFrameHostDelegate* delegate_; |
| 745 | 755 |
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 947 | 957 |
| 948 // NOTE: This must be the last member. | 958 // NOTE: This must be the last member. |
| 949 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; | 959 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; |
| 950 | 960 |
| 951 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); | 961 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); |
| 952 }; | 962 }; |
| 953 | 963 |
| 954 } // namespace content | 964 } // namespace content |
| 955 | 965 |
| 956 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 966 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
| OLD | NEW |