| 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 <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 class Rect; | 55 class Rect; |
| 56 } | 56 } |
| 57 | 57 |
| 58 namespace content { | 58 namespace content { |
| 59 | 59 |
| 60 class ChildFrameCompositingHelper; | 60 class ChildFrameCompositingHelper; |
| 61 class GeolocationDispatcher; | 61 class GeolocationDispatcher; |
| 62 class MediaStreamRendererFactory; | 62 class MediaStreamRendererFactory; |
| 63 class NotificationProvider; | 63 class NotificationProvider; |
| 64 class PepperPluginInstanceImpl; | 64 class PepperPluginInstanceImpl; |
| 65 class RendererCdmManager; |
| 66 class RendererMediaPlayerManager; |
| 65 class RendererPpapiHost; | 67 class RendererPpapiHost; |
| 66 class RenderFrameObserver; | 68 class RenderFrameObserver; |
| 67 class RenderViewImpl; | 69 class RenderViewImpl; |
| 68 class RenderWidget; | 70 class RenderWidget; |
| 69 class RenderWidgetFullscreenPepper; | 71 class RenderWidgetFullscreenPepper; |
| 70 struct CustomContextMenuContext; | 72 struct CustomContextMenuContext; |
| 71 | 73 |
| 72 #if defined(OS_ANDROID) | |
| 73 class RendererCdmManager; | |
| 74 class RendererMediaPlayerManager; | |
| 75 #endif | |
| 76 | |
| 77 class CONTENT_EXPORT RenderFrameImpl | 74 class CONTENT_EXPORT RenderFrameImpl |
| 78 : public RenderFrame, | 75 : public RenderFrame, |
| 79 NON_EXPORTED_BASE(public blink::WebFrameClient), | 76 NON_EXPORTED_BASE(public blink::WebFrameClient), |
| 80 NON_EXPORTED_BASE(public WebMediaPlayerDelegate) { | 77 NON_EXPORTED_BASE(public WebMediaPlayerDelegate) { |
| 81 public: | 78 public: |
| 82 // Creates a new RenderFrame. |render_view| is the RenderView object that this | 79 // Creates a new RenderFrame. |render_view| is the RenderView object that this |
| 83 // frame belongs to. | 80 // frame belongs to. |
| 84 // Callers *must* call |SetWebFrame| immediately after creation. | 81 // Callers *must* call |SetWebFrame| immediately after creation. |
| 85 // TODO(creis): We should structure this so that |SetWebFrame| isn't needed. | 82 // TODO(creis): We should structure this so that |SetWebFrame| isn't needed. |
| 86 static RenderFrameImpl* Create(RenderViewImpl* render_view, int32 routing_id); | 83 static RenderFrameImpl* Create(RenderViewImpl* render_view, int32 routing_id); |
| (...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 535 // Creates a factory object used for creating audio and video renderers. | 532 // Creates a factory object used for creating audio and video renderers. |
| 536 // The method is virtual so that layouttests can override it. | 533 // The method is virtual so that layouttests can override it. |
| 537 virtual scoped_ptr<MediaStreamRendererFactory> CreateRendererFactory(); | 534 virtual scoped_ptr<MediaStreamRendererFactory> CreateRendererFactory(); |
| 538 | 535 |
| 539 #if defined(OS_ANDROID) | 536 #if defined(OS_ANDROID) |
| 540 blink::WebMediaPlayer* CreateAndroidWebMediaPlayer( | 537 blink::WebMediaPlayer* CreateAndroidWebMediaPlayer( |
| 541 const blink::WebURL& url, | 538 const blink::WebURL& url, |
| 542 blink::WebMediaPlayerClient* client); | 539 blink::WebMediaPlayerClient* client); |
| 543 | 540 |
| 544 RendererMediaPlayerManager* GetMediaPlayerManager(); | 541 RendererMediaPlayerManager* GetMediaPlayerManager(); |
| 542 #endif |
| 543 |
| 544 #if defined(ENABLE_BROWSER_CDMS) |
| 545 RendererCdmManager* GetCdmManager(); | 545 RendererCdmManager* GetCdmManager(); |
| 546 #endif | 546 #endif |
| 547 | 547 |
| 548 // Stores the WebLocalFrame we are associated with. | 548 // Stores the WebLocalFrame we are associated with. |
| 549 blink::WebLocalFrame* frame_; | 549 blink::WebLocalFrame* frame_; |
| 550 | 550 |
| 551 base::WeakPtr<RenderViewImpl> render_view_; | 551 base::WeakPtr<RenderViewImpl> render_view_; |
| 552 int routing_id_; | 552 int routing_id_; |
| 553 bool is_swapped_out_; | 553 bool is_swapped_out_; |
| 554 // RenderFrameProxy exists only when is_swapped_out_ is true. | 554 // RenderFrameProxy exists only when is_swapped_out_ is true. |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 604 // The next group of objects all implement RenderFrameObserver, so are deleted | 604 // The next group of objects all implement RenderFrameObserver, so are deleted |
| 605 // along with the RenderFrame automatically. This is why we just store weak | 605 // along with the RenderFrame automatically. This is why we just store weak |
| 606 // references. | 606 // references. |
| 607 | 607 |
| 608 // Holds a reference to the service which provides desktop notifications. | 608 // Holds a reference to the service which provides desktop notifications. |
| 609 NotificationProvider* notification_provider_; | 609 NotificationProvider* notification_provider_; |
| 610 | 610 |
| 611 blink::WebUserMediaClient* web_user_media_client_; | 611 blink::WebUserMediaClient* web_user_media_client_; |
| 612 | 612 |
| 613 #if defined(OS_ANDROID) | 613 #if defined(OS_ANDROID) |
| 614 // These manage all media players and CDMs in this render frame for | 614 // Manages all media players in this render frame for communicating with the |
| 615 // communicating with the real media player and CDM objects in the browser | 615 // real media player in the browser process. It's okay to use a raw pointer |
| 616 // process. It's okay to use raw pointers since they are RenderFrameObservers. | 616 // since it's a RenderFrameObserver. |
| 617 RendererMediaPlayerManager* media_player_manager_; | 617 RendererMediaPlayerManager* media_player_manager_; |
| 618 #endif |
| 619 |
| 620 #if defined(ENABLE_BROWSER_CDMS) |
| 621 // Manage all CDMs in this render frame for communicating with the real CDM in |
| 622 // the browser process. It's okay to use a raw pointer since it's a |
| 623 // RenderFrameObserver. |
| 618 RendererCdmManager* cdm_manager_; | 624 RendererCdmManager* cdm_manager_; |
| 619 #endif | 625 #endif |
| 620 | 626 |
| 621 // The geolocation dispatcher attached to this view, lazily initialized. | 627 // The geolocation dispatcher attached to this view, lazily initialized. |
| 622 GeolocationDispatcher* geolocation_dispatcher_; | 628 GeolocationDispatcher* geolocation_dispatcher_; |
| 623 | 629 |
| 624 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; | 630 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; |
| 625 | 631 |
| 626 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); | 632 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); |
| 627 }; | 633 }; |
| 628 | 634 |
| 629 } // namespace content | 635 } // namespace content |
| 630 | 636 |
| 631 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ | 637 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ |
| OLD | NEW |