Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1245)

Side by Side Diff: content/renderer/render_frame_impl.h

Issue 2079943002: Change RenderFrame to use InterfaceRegistry et al. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a2
Patch Set: . Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
11 #include <memory> 11 #include <memory>
12 #include <string> 12 #include <string>
13 #include <vector> 13 #include <vector>
14 14
15 #include "base/files/file_path.h" 15 #include "base/files/file_path.h"
16 #include "base/gtest_prod_util.h" 16 #include "base/gtest_prod_util.h"
17 #include "base/id_map.h" 17 #include "base/id_map.h"
18 #include "base/macros.h" 18 #include "base/macros.h"
19 #include "base/memory/linked_ptr.h" 19 #include "base/memory/linked_ptr.h"
20 #include "base/memory/ref_counted.h" 20 #include "base/memory/ref_counted.h"
21 #include "base/memory/weak_ptr.h" 21 #include "base/memory/weak_ptr.h"
22 #include "base/observer_list.h" 22 #include "base/observer_list.h"
23 #include "base/process/process_handle.h" 23 #include "base/process/process_handle.h"
24 #include "build/build_config.h" 24 #include "build/build_config.h"
25 #include "content/common/accessibility_mode_enums.h" 25 #include "content/common/accessibility_mode_enums.h"
26 #include "content/common/frame.mojom.h" 26 #include "content/common/frame.mojom.h"
27 #include "content/common/frame_message_enums.h" 27 #include "content/common/frame_message_enums.h"
28 #include "content/common/mojo/service_registry_impl.h"
29 #include "content/public/common/console_message_level.h" 28 #include "content/public/common/console_message_level.h"
30 #include "content/public/common/javascript_message_type.h" 29 #include "content/public/common/javascript_message_type.h"
31 #include "content/public/common/referrer.h" 30 #include "content/public/common/referrer.h"
32 #include "content/public/common/stop_find_action.h" 31 #include "content/public/common/stop_find_action.h"
33 #include "content/public/renderer/render_frame.h" 32 #include "content/public/renderer/render_frame.h"
34 #include "content/renderer/frame_blame_context.h" 33 #include "content/renderer/frame_blame_context.h"
35 #include "content/renderer/mojo/blink_service_registry_impl.h" 34 #include "content/renderer/mojo/blink_service_registry_impl.h"
36 #include "content/renderer/renderer_webcookiejar_impl.h" 35 #include "content/renderer/renderer_webcookiejar_impl.h"
37 #include "ipc/ipc_message.h" 36 #include "ipc/ipc_message.h"
38 #include "ipc/ipc_platform_file.h" 37 #include "ipc/ipc_platform_file.h"
39 #include "media/blink/webmediaplayer_delegate.h" 38 #include "media/blink/webmediaplayer_delegate.h"
40 #include "media/blink/webmediaplayer_params.h" 39 #include "media/blink/webmediaplayer_params.h"
40 #include "mojo/public/cpp/bindings/binding.h"
41 #include "services/shell/public/interfaces/connector.mojom.h" 41 #include "services/shell/public/interfaces/connector.mojom.h"
42 #include "services/shell/public/interfaces/interface_provider.mojom.h" 42 #include "services/shell/public/interfaces/interface_provider.mojom.h"
43 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h" 43 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h"
44 #include "third_party/WebKit/public/platform/WebFocusType.h" 44 #include "third_party/WebKit/public/platform/WebFocusType.h"
45 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h" 45 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h"
46 #include "third_party/WebKit/public/platform/WebMediaPlayer.h" 46 #include "third_party/WebKit/public/platform/WebMediaPlayer.h"
47 #include "third_party/WebKit/public/platform/modules/app_banner/WebAppBannerClie nt.h" 47 #include "third_party/WebKit/public/platform/modules/app_banner/WebAppBannerClie nt.h"
48 #include "third_party/WebKit/public/web/WebAXObject.h" 48 #include "third_party/WebKit/public/web/WebAXObject.h"
49 #include "third_party/WebKit/public/web/WebDataSource.h" 49 #include "third_party/WebKit/public/web/WebDataSource.h"
50 #include "third_party/WebKit/public/web/WebFrameClient.h" 50 #include "third_party/WebKit/public/web/WebFrameClient.h"
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 class CdmFactory; 103 class CdmFactory;
104 class DecoderFactory; 104 class DecoderFactory;
105 class MediaPermission; 105 class MediaPermission;
106 class MediaServiceProvider; 106 class MediaServiceProvider;
107 class RendererWebMediaPlayerDelegate; 107 class RendererWebMediaPlayerDelegate;
108 class SurfaceManager; 108 class SurfaceManager;
109 class UrlIndex; 109 class UrlIndex;
110 class WebEncryptedMediaClientImpl; 110 class WebEncryptedMediaClientImpl;
111 } 111 }
112 112
113 namespace mojo { 113 namespace shell {
114 class ServiceProvider; 114 class InterfaceRegistry;
115 class InterfaceProvider;
115 } 116 }
116 117
117 namespace url { 118 namespace url {
118 class Origin; 119 class Origin;
119 } 120 }
120 121
121 namespace content { 122 namespace content {
122 123
123 class ChildFrameCompositingHelper; 124 class ChildFrameCompositingHelper;
124 class CompositorDependencies; 125 class CompositorDependencies;
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after
394 blink::WebPlugin* CreatePlugin( 395 blink::WebPlugin* CreatePlugin(
395 blink::WebFrame* frame, 396 blink::WebFrame* frame,
396 const WebPluginInfo& info, 397 const WebPluginInfo& info,
397 const blink::WebPluginParams& params, 398 const blink::WebPluginParams& params,
398 std::unique_ptr<PluginInstanceThrottler> throttler) override; 399 std::unique_ptr<PluginInstanceThrottler> throttler) override;
399 void LoadURLExternally(const blink::WebURLRequest& request, 400 void LoadURLExternally(const blink::WebURLRequest& request,
400 blink::WebNavigationPolicy policy) override; 401 blink::WebNavigationPolicy policy) override;
401 void ExecuteJavaScript(const base::string16& javascript) override; 402 void ExecuteJavaScript(const base::string16& javascript) override;
402 bool IsMainFrame() override; 403 bool IsMainFrame() override;
403 bool IsHidden() override; 404 bool IsHidden() override;
404 ServiceRegistry* GetServiceRegistry() override; 405 shell::InterfaceRegistry* GetInterfaceRegistry() override;
406 shell::InterfaceProvider* GetRemoteInterfaces() override;
405 #if defined(ENABLE_PLUGINS) 407 #if defined(ENABLE_PLUGINS)
406 void RegisterPeripheralPlugin( 408 void RegisterPeripheralPlugin(
407 const url::Origin& content_origin, 409 const url::Origin& content_origin,
408 const base::Closure& unthrottle_callback) override; 410 const base::Closure& unthrottle_callback) override;
409 RenderFrame::PeripheralContentStatus GetPeripheralContentStatus( 411 RenderFrame::PeripheralContentStatus GetPeripheralContentStatus(
410 const url::Origin& main_frame_origin, 412 const url::Origin& main_frame_origin,
411 const url::Origin& content_origin, 413 const url::Origin& content_origin,
412 const gfx::Size& unobscured_size) const override; 414 const gfx::Size& unobscured_size) const override;
413 void WhitelistContentOrigin(const url::Origin& content_origin) override; 415 void WhitelistContentOrigin(const url::Origin& content_origin) override;
414 #endif 416 #endif
(...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after
1011 1013
1012 bool AreSecureCodecsSupported(); 1014 bool AreSecureCodecsSupported();
1013 1015
1014 #if defined(ENABLE_MOJO_MEDIA) 1016 #if defined(ENABLE_MOJO_MEDIA)
1015 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider(); 1017 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider();
1016 #endif 1018 #endif
1017 1019
1018 media::CdmFactory* GetCdmFactory(); 1020 media::CdmFactory* GetCdmFactory();
1019 media::DecoderFactory* GetDecoderFactory(); 1021 media::DecoderFactory* GetDecoderFactory();
1020 1022
1021 void RegisterMojoServices(); 1023 void RegisterMojoInterfaces();
1022 1024
1023 // Connect to an interface provided by the service registry. 1025 // Connect to an interface provided by the service registry.
1024 template <typename Interface> 1026 template <typename Interface>
1025 void GetInterface(mojo::InterfaceRequest<Interface> request); 1027 void GetInterface(mojo::InterfaceRequest<Interface> request);
1026 1028
1027 // Connects to a Mojo application and returns a proxy to its exposed 1029 // Connects to a Mojo application and returns a proxy to its exposed
1028 // ServiceProvider. 1030 // ServiceProvider.
1029 shell::mojom::InterfaceProviderPtr ConnectToApplication(const GURL& url); 1031 shell::mojom::InterfaceProviderPtr ConnectToApplication(const GURL& url);
1030 1032
1031 // Returns the media delegate for WebMediaPlayer usage. If 1033 // Returns the media delegate for WebMediaPlayer usage. If
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
1203 // local roots. 1205 // local roots.
1204 DevToolsAgent* devtools_agent_; 1206 DevToolsAgent* devtools_agent_;
1205 1207
1206 // The push messaging dispatcher attached to this frame, lazily initialized. 1208 // The push messaging dispatcher attached to this frame, lazily initialized.
1207 PushMessagingDispatcher* push_messaging_dispatcher_; 1209 PushMessagingDispatcher* push_messaging_dispatcher_;
1208 1210
1209 // The presentation dispatcher implementation attached to this frame, lazily 1211 // The presentation dispatcher implementation attached to this frame, lazily
1210 // initialized. 1212 // initialized.
1211 PresentationDispatcher* presentation_dispatcher_; 1213 PresentationDispatcher* presentation_dispatcher_;
1212 1214
1213 ServiceRegistryImpl service_registry_; 1215 std::unique_ptr<shell::InterfaceRegistry> interface_registry_;
1214 BlinkServiceRegistryImpl blink_service_registry_; 1216 std::unique_ptr<shell::InterfaceProvider> remote_interfaces_;
1217 std::unique_ptr<BlinkServiceRegistryImpl> blink_service_registry_;
1218 shell::mojom::InterfaceProviderRequest
1219 pending_remote_interface_provider_request_;
1215 1220
1216 // The shell proxy used to connect to Mojo applications. 1221 // The shell proxy used to connect to Mojo applications.
1217 shell::mojom::ConnectorPtr connector_; 1222 shell::mojom::ConnectorPtr connector_;
1218 1223
1219 // The screen orientation dispatcher attached to the frame, lazily 1224 // The screen orientation dispatcher attached to the frame, lazily
1220 // initialized. 1225 // initialized.
1221 ScreenOrientationDispatcher* screen_orientation_dispatcher_; 1226 ScreenOrientationDispatcher* screen_orientation_dispatcher_;
1222 1227
1223 // The Manifest Manager handles the manifest requests from the browser 1228 // The Manifest Manager handles the manifest requests from the browser
1224 // process. 1229 // process.
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
1288 mojom::FrameHostPtr frame_host_; 1293 mojom::FrameHostPtr frame_host_;
1289 1294
1290 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; 1295 base::WeakPtrFactory<RenderFrameImpl> weak_factory_;
1291 1296
1292 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); 1297 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl);
1293 }; 1298 };
1294 1299
1295 } // namespace content 1300 } // namespace content
1296 1301
1297 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 1302 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
OLDNEW
« no previous file with comments | « content/renderer/presentation/presentation_dispatcher.cc ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698