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

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

Issue 2065513004: Expose flash playback status and volume control to content renderer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@audio_focus_manager
Patch Set: moved start/stop/created/deleted to the follow-up CL 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
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 class MediaInterfaceProvider; 129 class MediaInterfaceProvider;
130 class MediaStreamDispatcher; 130 class MediaStreamDispatcher;
131 class MediaStreamRendererFactory; 131 class MediaStreamRendererFactory;
132 class MediaPermissionDispatcher; 132 class MediaPermissionDispatcher;
133 class MidiDispatcher; 133 class MidiDispatcher;
134 class NavigationState; 134 class NavigationState;
135 class NotificationPermissionDispatcher; 135 class NotificationPermissionDispatcher;
136 class PageState; 136 class PageState;
137 class PepperPluginInstanceImpl; 137 class PepperPluginInstanceImpl;
138 class PermissionDispatcher; 138 class PermissionDispatcher;
139 class PPB_Audio_Impl;
139 class PresentationDispatcher; 140 class PresentationDispatcher;
140 class PushMessagingDispatcher; 141 class PushMessagingDispatcher;
141 class RendererAccessibility; 142 class RendererAccessibility;
142 class RendererCdmManager; 143 class RendererCdmManager;
143 class RendererMediaPlayerManager; 144 class RendererMediaPlayerManager;
144 class RendererMediaSessionManager; 145 class RendererMediaSessionManager;
145 class RendererPpapiHost; 146 class RendererPpapiHost;
146 class RendererSurfaceViewManager; 147 class RendererSurfaceViewManager;
147 class RenderFrameObserver; 148 class RenderFrameObserver;
148 class RenderViewImpl; 149 class RenderViewImpl;
(...skipping 527 matching lines...) Expand 10 before | Expand all | Expand 10 after
676 // Indicates that the given instance has been created. 677 // Indicates that the given instance has been created.
677 void PepperInstanceCreated(PepperPluginInstanceImpl* instance); 678 void PepperInstanceCreated(PepperPluginInstanceImpl* instance);
678 679
679 // Indicates that the given instance is being destroyed. This is called from 680 // Indicates that the given instance is being destroyed. This is called from
680 // the destructor, so it's important that the instance is not dereferenced 681 // the destructor, so it's important that the instance is not dereferenced
681 // from this call. 682 // from this call.
682 void PepperInstanceDeleted(PepperPluginInstanceImpl* instance); 683 void PepperInstanceDeleted(PepperPluginInstanceImpl* instance);
683 684
684 // Notification that the given plugin is focused or unfocused. 685 // Notification that the given plugin is focused or unfocused.
685 void PepperFocusChanged(PepperPluginInstanceImpl* instance, bool focused); 686 void PepperFocusChanged(PepperPluginInstanceImpl* instance, bool focused);
687
688 void PepperStartsPlayback(PepperPluginInstanceImpl* instance,
689 PPB_Audio_Impl* audio_instance);
690 void PepperStopsPlayback(PepperPluginInstanceImpl* instance,
691 PPB_Audio_Impl* audio_instance);
692 void OnSetPepperVolume(int32_t pp_instance, double volume);
686 #endif // ENABLE_PLUGINS 693 #endif // ENABLE_PLUGINS
687 694
688 protected: 695 protected:
689 explicit RenderFrameImpl(const CreateParams& params); 696 explicit RenderFrameImpl(const CreateParams& params);
690 697
691 private: 698 private:
692 friend class RenderFrameImplTest; 699 friend class RenderFrameImplTest;
693 friend class RenderFrameObserver; 700 friend class RenderFrameObserver;
694 friend class RendererAccessibilityTest; 701 friend class RendererAccessibilityTest;
695 friend class TestRenderFrame; 702 friend class TestRenderFrame;
(...skipping 578 matching lines...) Expand 10 before | Expand all | Expand 10 after
1274 PepperPluginSet active_pepper_instances_; 1281 PepperPluginSet active_pepper_instances_;
1275 1282
1276 // Whether or not the focus is on a PPAPI plugin 1283 // Whether or not the focus is on a PPAPI plugin
1277 PepperPluginInstanceImpl* focused_pepper_plugin_; 1284 PepperPluginInstanceImpl* focused_pepper_plugin_;
1278 1285
1279 // The plugin instance that received the last mouse event. It is set to NULL 1286 // The plugin instance that received the last mouse event. It is set to NULL
1280 // if the last mouse event went to elements other than Pepper plugins. 1287 // if the last mouse event went to elements other than Pepper plugins.
1281 // |pepper_last_mouse_event_target_| is not owned by this class. We depend on 1288 // |pepper_last_mouse_event_target_| is not owned by this class. We depend on
1282 // the RenderFrameImpl to NULL it out when it destructs. 1289 // the RenderFrameImpl to NULL it out when it destructs.
1283 PepperPluginInstanceImpl* pepper_last_mouse_event_target_; 1290 PepperPluginInstanceImpl* pepper_last_mouse_event_target_;
1291
1292 std::map<int32_t, std::set<PPB_Audio_Impl*>> pepper_audios_map_;
1284 #endif 1293 #endif
1285 1294
1286 mojo::Binding<mojom::Frame> frame_binding_; 1295 mojo::Binding<mojom::Frame> frame_binding_;
1287 mojom::FrameHostPtr frame_host_; 1296 mojom::FrameHostPtr frame_host_;
1288 1297
1289 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; 1298 base::WeakPtrFactory<RenderFrameImpl> weak_factory_;
1290 1299
1291 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); 1300 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl);
1292 }; 1301 };
1293 1302
1294 } // namespace content 1303 } // namespace content
1295 1304
1296 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 1305 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698