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 <map> | 8 #include <map> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
243 | 243 |
244 void set_render_frame_proxy_host(RenderFrameProxyHost* proxy) { | 244 void set_render_frame_proxy_host(RenderFrameProxyHost* proxy) { |
245 render_frame_proxy_host_ = proxy; | 245 render_frame_proxy_host_ = proxy; |
246 } | 246 } |
247 | 247 |
248 // Returns a bitwise OR of bindings types that have been enabled for this | 248 // Returns a bitwise OR of bindings types that have been enabled for this |
249 // RenderFrameHostImpl's RenderView. See BindingsPolicy for details. | 249 // RenderFrameHostImpl's RenderView. See BindingsPolicy for details. |
250 // TODO(creis): Make bindings frame-specific, to support cases like <webview>. | 250 // TODO(creis): Make bindings frame-specific, to support cases like <webview>. |
251 int GetEnabledBindings(); | 251 int GetEnabledBindings(); |
252 | 252 |
| 253 // The unique ID of the latest NavigationEntry that this RenderFrameHost is |
| 254 // showing. This may change even when this frame hasn't committed a page, |
| 255 // such as for a new subframe navigation in a different frame. |
| 256 int nav_entry_id() const { return nav_entry_id_; } |
| 257 void set_nav_entry_id(int nav_entry_id) { nav_entry_id_ = nav_entry_id; } |
| 258 |
| 259 // A NavigationHandle for the pending navigation in this frame, if any. This |
| 260 // is cleared when the navigation commits. |
253 NavigationHandleImpl* navigation_handle() const { | 261 NavigationHandleImpl* navigation_handle() const { |
254 return navigation_handle_.get(); | 262 return navigation_handle_.get(); |
255 } | 263 } |
256 | 264 |
257 // Called when a new navigation starts in this RenderFrameHost. Ownership of | 265 // Called when a new navigation starts in this RenderFrameHost. Ownership of |
258 // |navigation_handle| is transferred. | 266 // |navigation_handle| is transferred. |
259 // PlzNavigate: called when a navigation is ready to commit in this | 267 // PlzNavigate: called when a navigation is ready to commit in this |
260 // RenderFrameHost. | 268 // RenderFrameHost. |
261 void SetNavigationHandle(scoped_ptr<NavigationHandleImpl> navigation_handle); | 269 void SetNavigationHandle(scoped_ptr<NavigationHandleImpl> navigation_handle); |
262 | 270 |
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
734 | 742 |
735 // Indicates whether this RenderFrameHost is in the process of loading a | 743 // Indicates whether this RenderFrameHost is in the process of loading a |
736 // document or not. | 744 // document or not. |
737 bool is_loading_; | 745 bool is_loading_; |
738 | 746 |
739 // PlzNavigate | 747 // PlzNavigate |
740 // Used to track whether a commit is expected in this frame. Only used in | 748 // Used to track whether a commit is expected in this frame. Only used in |
741 // tests. | 749 // tests. |
742 bool pending_commit_; | 750 bool pending_commit_; |
743 | 751 |
| 752 // The unique ID of the latest NavigationEntry that this RenderFrameHost is |
| 753 // showing. This may change even when this frame hasn't committed a page, |
| 754 // such as for a new subframe navigation in a different frame. Tracking this |
| 755 // allows us to send things like title and state updates to the latest |
| 756 // relevant NavigationEntry. |
| 757 int nav_entry_id_; |
| 758 |
744 // Used to swap out or shut down this RFH when the unload event is taking too | 759 // Used to swap out or shut down this RFH when the unload event is taking too |
745 // long to execute, depending on the number of active frames in the | 760 // long to execute, depending on the number of active frames in the |
746 // SiteInstance. | 761 // SiteInstance. |
747 scoped_ptr<TimeoutMonitor> swapout_event_monitor_timeout_; | 762 scoped_ptr<TimeoutMonitor> swapout_event_monitor_timeout_; |
748 | 763 |
749 scoped_ptr<ServiceRegistryImpl> service_registry_; | 764 scoped_ptr<ServiceRegistryImpl> service_registry_; |
750 | 765 |
751 #if defined(OS_ANDROID) | 766 #if defined(OS_ANDROID) |
752 scoped_ptr<ServiceRegistryAndroid> service_registry_android_; | 767 scoped_ptr<ServiceRegistryAndroid> service_registry_android_; |
753 #endif | 768 #endif |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
798 | 813 |
799 // NOTE: This must be the last member. | 814 // NOTE: This must be the last member. |
800 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; | 815 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; |
801 | 816 |
802 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); | 817 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); |
803 }; | 818 }; |
804 | 819 |
805 } // namespace content | 820 } // namespace content |
806 | 821 |
807 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 822 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
OLD | NEW |