| 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 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 96 struct FileChooserParams; | 96 struct FileChooserParams; |
| 97 struct Referrer; | 97 struct Referrer; |
| 98 struct ResourceResponse; | 98 struct ResourceResponse; |
| 99 | 99 |
| 100 class CONTENT_EXPORT RenderFrameHostImpl | 100 class CONTENT_EXPORT RenderFrameHostImpl |
| 101 : public RenderFrameHost, | 101 : public RenderFrameHost, |
| 102 NON_EXPORTED_BASE(public mojom::FrameHost), | 102 NON_EXPORTED_BASE(public mojom::FrameHost), |
| 103 public BrowserAccessibilityDelegate, | 103 public BrowserAccessibilityDelegate, |
| 104 public SiteInstanceImpl::Observer, | 104 public SiteInstanceImpl::Observer, |
| 105 public NON_EXPORTED_BASE( | 105 public NON_EXPORTED_BASE( |
| 106 shell::InterfaceFactory<media::mojom::ServiceFactory>) { | 106 service_manager::InterfaceFactory<media::mojom::ServiceFactory>) { |
| 107 public: | 107 public: |
| 108 using AXTreeSnapshotCallback = | 108 using AXTreeSnapshotCallback = |
| 109 base::Callback<void( | 109 base::Callback<void( |
| 110 const ui::AXTreeUpdate&)>; | 110 const ui::AXTreeUpdate&)>; |
| 111 | 111 |
| 112 // An accessibility reset is only allowed to prevent very rare corner cases | 112 // An accessibility reset is only allowed to prevent very rare corner cases |
| 113 // or race conditions where the browser and renderer get out of sync. If | 113 // or race conditions where the browser and renderer get out of sync. If |
| 114 // this happens more than this many times, kill the renderer. | 114 // this happens more than this many times, kill the renderer. |
| 115 static const int kMaxAccessibilityResets = 5; | 115 static const int kMaxAccessibilityResets = 5; |
| 116 | 116 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 146 void ExecuteJavaScriptForTests( | 146 void ExecuteJavaScriptForTests( |
| 147 const base::string16& javascript, | 147 const base::string16& javascript, |
| 148 const JavaScriptResultCallback& callback) override; | 148 const JavaScriptResultCallback& callback) override; |
| 149 void ExecuteJavaScriptWithUserGestureForTests( | 149 void ExecuteJavaScriptWithUserGestureForTests( |
| 150 const base::string16& javascript) override; | 150 const base::string16& javascript) override; |
| 151 void ActivateFindInPageResultForAccessibility(int request_id) override; | 151 void ActivateFindInPageResultForAccessibility(int request_id) override; |
| 152 void InsertVisualStateCallback(const VisualStateCallback& callback) override; | 152 void InsertVisualStateCallback(const VisualStateCallback& callback) override; |
| 153 void CopyImageAt(int x, int y) override; | 153 void CopyImageAt(int x, int y) override; |
| 154 void SaveImageAt(int x, int y) override; | 154 void SaveImageAt(int x, int y) override; |
| 155 RenderViewHost* GetRenderViewHost() override; | 155 RenderViewHost* GetRenderViewHost() override; |
| 156 shell::InterfaceRegistry* GetInterfaceRegistry() override; | 156 service_manager::InterfaceRegistry* GetInterfaceRegistry() override; |
| 157 shell::InterfaceProvider* GetRemoteInterfaces() override; | 157 service_manager::InterfaceProvider* GetRemoteInterfaces() override; |
| 158 AssociatedInterfaceProvider* GetRemoteAssociatedInterfaces() override; | 158 AssociatedInterfaceProvider* GetRemoteAssociatedInterfaces() override; |
| 159 blink::WebPageVisibilityState GetVisibilityState() override; | 159 blink::WebPageVisibilityState GetVisibilityState() override; |
| 160 bool IsRenderFrameLive() override; | 160 bool IsRenderFrameLive() override; |
| 161 int GetProxyCount() override; | 161 int GetProxyCount() override; |
| 162 void FilesSelectedInChooser(const std::vector<FileChooserFileInfo>& files, | 162 void FilesSelectedInChooser(const std::vector<FileChooserFileInfo>& files, |
| 163 FileChooserParams::Mode permissions) override; | 163 FileChooserParams::Mode permissions) override; |
| 164 void RequestTextSurroundingSelection( | 164 void RequestTextSurroundingSelection( |
| 165 const TextSurroundingSelectionCallback& callback, | 165 const TextSurroundingSelectionCallback& callback, |
| 166 int max_length) override; | 166 int max_length) override; |
| 167 | 167 |
| 168 // mojom::FrameHost | 168 // mojom::FrameHost |
| 169 void GetInterfaceProvider( | 169 void GetInterfaceProvider( |
| 170 shell::mojom::InterfaceProviderRequest interfaces) override; | 170 service_manager::mojom::InterfaceProviderRequest interfaces) override; |
| 171 | 171 |
| 172 // IPC::Sender | 172 // IPC::Sender |
| 173 bool Send(IPC::Message* msg) override; | 173 bool Send(IPC::Message* msg) override; |
| 174 | 174 |
| 175 // IPC::Listener | 175 // IPC::Listener |
| 176 bool OnMessageReceived(const IPC::Message& msg) override; | 176 bool OnMessageReceived(const IPC::Message& msg) override; |
| 177 void OnAssociatedInterfaceRequest( | 177 void OnAssociatedInterfaceRequest( |
| 178 const std::string& interface_name, | 178 const std::string& interface_name, |
| 179 mojo::ScopedInterfaceEndpointHandle handle) override; | 179 mojo::ScopedInterfaceEndpointHandle handle) override; |
| 180 | 180 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 200 const gfx::Rect& bounds) const override; | 200 const gfx::Rect& bounds) const override; |
| 201 void AccessibilityHitTest(const gfx::Point& point) override; | 201 void AccessibilityHitTest(const gfx::Point& point) override; |
| 202 void AccessibilitySetAccessibilityFocus(int acc_obj_id) override; | 202 void AccessibilitySetAccessibilityFocus(int acc_obj_id) override; |
| 203 void AccessibilityFatalError() override; | 203 void AccessibilityFatalError() override; |
| 204 gfx::AcceleratedWidget AccessibilityGetAcceleratedWidget() override; | 204 gfx::AcceleratedWidget AccessibilityGetAcceleratedWidget() override; |
| 205 gfx::NativeViewAccessible AccessibilityGetNativeViewAccessible() override; | 205 gfx::NativeViewAccessible AccessibilityGetNativeViewAccessible() override; |
| 206 | 206 |
| 207 // SiteInstanceImpl::Observer | 207 // SiteInstanceImpl::Observer |
| 208 void RenderProcessGone(SiteInstanceImpl* site_instance) override; | 208 void RenderProcessGone(SiteInstanceImpl* site_instance) override; |
| 209 | 209 |
| 210 // shell::InterfaceFactory<media::mojom::ServiceFactory> | 210 // service_manager::InterfaceFactory<media::mojom::ServiceFactory> |
| 211 void Create(const shell::Identity& remote_identity, | 211 void Create(const service_manager::Identity& remote_identity, |
| 212 media::mojom::ServiceFactoryRequest request) override; | 212 media::mojom::ServiceFactoryRequest request) override; |
| 213 | 213 |
| 214 // Creates a RenderFrame in the renderer process. | 214 // Creates a RenderFrame in the renderer process. |
| 215 bool CreateRenderFrame(int proxy_routing_id, | 215 bool CreateRenderFrame(int proxy_routing_id, |
| 216 int opener_routing_id, | 216 int opener_routing_id, |
| 217 int parent_routing_id, | 217 int parent_routing_id, |
| 218 int previous_sibling_routing_id); | 218 int previous_sibling_routing_id); |
| 219 | 219 |
| 220 // Tracks whether the RenderFrame for this RenderFrameHost has been created in | 220 // Tracks whether the RenderFrame for this RenderFrameHost has been created in |
| 221 // the renderer process. This is currently only used for subframes. | 221 // the renderer process. This is currently only used for subframes. |
| (...skipping 736 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 958 // such as for a new subframe navigation in a different frame. Tracking this | 958 // such as for a new subframe navigation in a different frame. Tracking this |
| 959 // allows us to send things like title and state updates to the latest | 959 // allows us to send things like title and state updates to the latest |
| 960 // relevant NavigationEntry. | 960 // relevant NavigationEntry. |
| 961 int nav_entry_id_; | 961 int nav_entry_id_; |
| 962 | 962 |
| 963 // Used to swap out or shut down this RFH when the unload event is taking too | 963 // Used to swap out or shut down this RFH when the unload event is taking too |
| 964 // long to execute, depending on the number of active frames in the | 964 // long to execute, depending on the number of active frames in the |
| 965 // SiteInstance. May be null in tests. | 965 // SiteInstance. May be null in tests. |
| 966 std::unique_ptr<TimeoutMonitor> swapout_event_monitor_timeout_; | 966 std::unique_ptr<TimeoutMonitor> swapout_event_monitor_timeout_; |
| 967 | 967 |
| 968 std::unique_ptr<shell::InterfaceRegistry> interface_registry_; | 968 std::unique_ptr<service_manager::InterfaceRegistry> interface_registry_; |
| 969 std::unique_ptr<shell::InterfaceProvider> remote_interfaces_; | 969 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces_; |
| 970 | 970 |
| 971 #if defined(OS_ANDROID) | 971 #if defined(OS_ANDROID) |
| 972 // The filter for MessagePort messages between an Android apps and web. | 972 // The filter for MessagePort messages between an Android apps and web. |
| 973 scoped_refptr<AppWebMessagePortMessageFilter> | 973 scoped_refptr<AppWebMessagePortMessageFilter> |
| 974 app_web_message_port_message_filter_; | 974 app_web_message_port_message_filter_; |
| 975 #endif | 975 #endif |
| 976 | 976 |
| 977 std::unique_ptr<WebBluetoothServiceImpl> web_bluetooth_service_; | 977 std::unique_ptr<WebBluetoothServiceImpl> web_bluetooth_service_; |
| 978 | 978 |
| 979 // The object managing the accessibility tree for this frame. | 979 // The object managing the accessibility tree for this frame. |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1046 // same LoFi status as the top-level frame. | 1046 // same LoFi status as the top-level frame. |
| 1047 LoFiState last_navigation_lofi_state_; | 1047 LoFiState last_navigation_lofi_state_; |
| 1048 | 1048 |
| 1049 mojo::Binding<mojom::FrameHost> frame_host_binding_; | 1049 mojo::Binding<mojom::FrameHost> frame_host_binding_; |
| 1050 mojom::FramePtr frame_; | 1050 mojom::FramePtr frame_; |
| 1051 | 1051 |
| 1052 // Callback for responding when | 1052 // Callback for responding when |
| 1053 // |FrameHostMsg_TextSurroundingSelectionResponse| message comes. | 1053 // |FrameHostMsg_TextSurroundingSelectionResponse| message comes. |
| 1054 TextSurroundingSelectionCallback text_surrounding_selection_callback_; | 1054 TextSurroundingSelectionCallback text_surrounding_selection_callback_; |
| 1055 | 1055 |
| 1056 std::vector<std::unique_ptr<shell::InterfaceRegistry>> media_registries_; | 1056 std::vector<std::unique_ptr<service_manager::InterfaceRegistry>> |
| 1057 media_registries_; |
| 1057 | 1058 |
| 1058 std::unique_ptr<AssociatedInterfaceProviderImpl> | 1059 std::unique_ptr<AssociatedInterfaceProviderImpl> |
| 1059 remote_associated_interfaces_; | 1060 remote_associated_interfaces_; |
| 1060 // NOTE: This must be the last member. | 1061 // NOTE: This must be the last member. |
| 1061 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; | 1062 base::WeakPtrFactory<RenderFrameHostImpl> weak_ptr_factory_; |
| 1062 | 1063 |
| 1063 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); | 1064 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); |
| 1064 }; | 1065 }; |
| 1065 | 1066 |
| 1066 } // namespace content | 1067 } // namespace content |
| 1067 | 1068 |
| 1068 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 1069 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
| OLD | NEW |