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_RENDERER_RENDER_FRAME_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 #include "content/renderer/mojo/blink_interface_provider_impl.h" | 45 #include "content/renderer/mojo/blink_interface_provider_impl.h" |
46 #include "content/renderer/renderer_webcookiejar_impl.h" | 46 #include "content/renderer/renderer_webcookiejar_impl.h" |
47 #include "content/renderer/unique_name_helper.h" | 47 #include "content/renderer/unique_name_helper.h" |
48 #include "ipc/ipc_message.h" | 48 #include "ipc/ipc_message.h" |
49 #include "ipc/ipc_platform_file.h" | 49 #include "ipc/ipc_platform_file.h" |
50 #include "media/blink/webmediaplayer_delegate.h" | 50 #include "media/blink/webmediaplayer_delegate.h" |
51 #include "media/blink/webmediaplayer_params.h" | 51 #include "media/blink/webmediaplayer_params.h" |
52 #include "media/mojo/interfaces/remoting.mojom.h" | 52 #include "media/mojo/interfaces/remoting.mojom.h" |
53 #include "mojo/public/cpp/bindings/associated_binding.h" | 53 #include "mojo/public/cpp/bindings/associated_binding.h" |
54 #include "mojo/public/cpp/bindings/binding.h" | 54 #include "mojo/public/cpp/bindings/binding.h" |
| 55 #include "mojo/public/cpp/bindings/binding_set.h" |
55 #include "mojo/public/cpp/system/data_pipe.h" | 56 #include "mojo/public/cpp/system/data_pipe.h" |
56 #include "ppapi/features/features.h" | 57 #include "ppapi/features/features.h" |
57 #include "services/service_manager/public/cpp/service_info.h" | 58 #include "services/service_manager/public/cpp/service_info.h" |
58 #include "services/service_manager/public/interfaces/connector.mojom.h" | 59 #include "services/service_manager/public/interfaces/connector.mojom.h" |
59 #include "services/service_manager/public/interfaces/interface_provider.mojom.h" | 60 #include "services/service_manager/public/interfaces/interface_provider.mojom.h" |
60 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h" | 61 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h" |
61 #include "third_party/WebKit/public/platform/WebFeaturePolicy.h" | 62 #include "third_party/WebKit/public/platform/WebFeaturePolicy.h" |
62 #include "third_party/WebKit/public/platform/WebFocusType.h" | 63 #include "third_party/WebKit/public/platform/WebFocusType.h" |
63 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h" | 64 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h" |
64 #include "third_party/WebKit/public/platform/WebMediaPlayer.h" | 65 #include "third_party/WebKit/public/platform/WebMediaPlayer.h" |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 class CreateFrameWidgetParams; | 181 class CreateFrameWidgetParams; |
181 } | 182 } |
182 | 183 |
183 class CONTENT_EXPORT RenderFrameImpl | 184 class CONTENT_EXPORT RenderFrameImpl |
184 : public RenderFrame, | 185 : public RenderFrame, |
185 NON_EXPORTED_BASE(blink::mojom::EngagementClient), | 186 NON_EXPORTED_BASE(blink::mojom::EngagementClient), |
186 NON_EXPORTED_BASE(mojom::Frame), | 187 NON_EXPORTED_BASE(mojom::Frame), |
187 NON_EXPORTED_BASE(mojom::HostZoom), | 188 NON_EXPORTED_BASE(mojom::HostZoom), |
188 NON_EXPORTED_BASE(mojom::FrameBindingsControl), | 189 NON_EXPORTED_BASE(mojom::FrameBindingsControl), |
189 NON_EXPORTED_BASE(public blink::WebFrameClient), | 190 NON_EXPORTED_BASE(public blink::WebFrameClient), |
190 NON_EXPORTED_BASE(public blink::WebFrameSerializerClient) { | 191 NON_EXPORTED_BASE(public blink::WebFrameSerializerClient), |
| 192 NON_EXPORTED_BASE(service_manager::mojom::InterfaceProvider) { |
191 public: | 193 public: |
192 // Creates a new RenderFrame as the main frame of |render_view|. | 194 // Creates a new RenderFrame as the main frame of |render_view|. |
193 static RenderFrameImpl* CreateMainFrame( | 195 static RenderFrameImpl* CreateMainFrame( |
194 RenderViewImpl* render_view, | 196 RenderViewImpl* render_view, |
195 int32_t routing_id, | 197 int32_t routing_id, |
196 int32_t widget_routing_id, | 198 int32_t widget_routing_id, |
197 bool hidden, | 199 bool hidden, |
198 const ScreenInfo& screen_info, | 200 const ScreenInfo& screen_info, |
199 CompositorDependencies* compositor_deps, | 201 CompositorDependencies* compositor_deps, |
200 blink::WebFrame* opener); | 202 blink::WebFrame* opener); |
(...skipping 914 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1115 // Sends a reply to the current find operation handling if it was a | 1117 // Sends a reply to the current find operation handling if it was a |
1116 // synchronous find request. | 1118 // synchronous find request. |
1117 void SendFindReply(int request_id, | 1119 void SendFindReply(int request_id, |
1118 int match_count, | 1120 int match_count, |
1119 int ordinal, | 1121 int ordinal, |
1120 const blink::WebRect& selection_rect, | 1122 const blink::WebRect& selection_rect, |
1121 bool final_status_update); | 1123 bool final_status_update); |
1122 | 1124 |
1123 void InitializeBlameContext(RenderFrameImpl* parent_frame); | 1125 void InitializeBlameContext(RenderFrameImpl* parent_frame); |
1124 | 1126 |
| 1127 // service_manager::mojom::InterfaceProvider: |
| 1128 void GetInterface(const std::string& interface_name, |
| 1129 mojo::ScopedMessagePipeHandle interface_pipe) override; |
| 1130 |
1125 // Stores the WebLocalFrame we are associated with. This is null from the | 1131 // Stores the WebLocalFrame we are associated with. This is null from the |
1126 // constructor until BindToWebFrame is called, and it is null after | 1132 // constructor until BindToWebFrame is called, and it is null after |
1127 // frameDetached is called until destruction (which is asynchronous in the | 1133 // frameDetached is called until destruction (which is asynchronous in the |
1128 // case of the main frame, but not subframes). | 1134 // case of the main frame, but not subframes). |
1129 blink::WebLocalFrame* frame_; | 1135 blink::WebLocalFrame* frame_; |
1130 | 1136 |
1131 // Boolean value indicating whether this RenderFrameImpl object is for the | 1137 // Boolean value indicating whether this RenderFrameImpl object is for the |
1132 // main frame or not. It remains accurate during destruction, even when | 1138 // main frame or not. It remains accurate during destruction, even when |
1133 // |frame_| has been invalidated. | 1139 // |frame_| has been invalidated. |
1134 bool is_main_frame_; | 1140 bool is_main_frame_; |
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1419 blink::WebSourceLocation source_location; | 1425 blink::WebSourceLocation source_location; |
1420 | 1426 |
1421 PendingNavigationInfo(const NavigationPolicyInfo& info); | 1427 PendingNavigationInfo(const NavigationPolicyInfo& info); |
1422 }; | 1428 }; |
1423 | 1429 |
1424 // PlzNavigate: Contains information about a pending navigation to be sent to | 1430 // PlzNavigate: Contains information about a pending navigation to be sent to |
1425 // the browser. This state is allocated in decidePolicyForNavigation() and | 1431 // the browser. This state is allocated in decidePolicyForNavigation() and |
1426 // is used and released in didStartProvisionalLoad(). | 1432 // is used and released in didStartProvisionalLoad(). |
1427 std::unique_ptr<PendingNavigationInfo> pending_navigation_info_; | 1433 std::unique_ptr<PendingNavigationInfo> pending_navigation_info_; |
1428 | 1434 |
| 1435 mojo::BindingSet<service_manager::mojom::InterfaceProvider> |
| 1436 interface_provider_bindings_; |
| 1437 |
1429 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; | 1438 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; |
1430 | 1439 |
1431 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); | 1440 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); |
1432 }; | 1441 }; |
1433 | 1442 |
1434 } // namespace content | 1443 } // namespace content |
1435 | 1444 |
1436 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 1445 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
OLD | NEW |