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

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: fixed nits for bbudge 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 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 class MediaInterfaceProvider; 127 class MediaInterfaceProvider;
128 class MediaStreamDispatcher; 128 class MediaStreamDispatcher;
129 class MediaStreamRendererFactory; 129 class MediaStreamRendererFactory;
130 class MediaPermissionDispatcher; 130 class MediaPermissionDispatcher;
131 class MidiDispatcher; 131 class MidiDispatcher;
132 class NavigationState; 132 class NavigationState;
133 class NotificationPermissionDispatcher; 133 class NotificationPermissionDispatcher;
134 class PageState; 134 class PageState;
135 class PepperPluginInstanceImpl; 135 class PepperPluginInstanceImpl;
136 class PermissionDispatcher; 136 class PermissionDispatcher;
137 class PPB_Audio_Impl;
137 class PresentationDispatcher; 138 class PresentationDispatcher;
138 class PushMessagingDispatcher; 139 class PushMessagingDispatcher;
139 class RendererAccessibility; 140 class RendererAccessibility;
140 class RendererCdmManager; 141 class RendererCdmManager;
141 class RendererMediaPlayerManager; 142 class RendererMediaPlayerManager;
142 class RendererMediaSessionManager; 143 class RendererMediaSessionManager;
143 class RendererPpapiHost; 144 class RendererPpapiHost;
144 class RendererSurfaceViewManager; 145 class RendererSurfaceViewManager;
145 class RenderFrameObserver; 146 class RenderFrameObserver;
146 class RenderViewImpl; 147 class RenderViewImpl;
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
670 // Indicates that the given instance has been created. 671 // Indicates that the given instance has been created.
671 void PepperInstanceCreated(PepperPluginInstanceImpl* instance); 672 void PepperInstanceCreated(PepperPluginInstanceImpl* instance);
672 673
673 // Indicates that the given instance is being destroyed. This is called from 674 // Indicates that the given instance is being destroyed. This is called from
674 // the destructor, so it's important that the instance is not dereferenced 675 // the destructor, so it's important that the instance is not dereferenced
675 // from this call. 676 // from this call.
676 void PepperInstanceDeleted(PepperPluginInstanceImpl* instance); 677 void PepperInstanceDeleted(PepperPluginInstanceImpl* instance);
677 678
678 // Notification that the given plugin is focused or unfocused. 679 // Notification that the given plugin is focused or unfocused.
679 void PepperFocusChanged(PepperPluginInstanceImpl* instance, bool focused); 680 void PepperFocusChanged(PepperPluginInstanceImpl* instance, bool focused);
681
682 void PepperStartsPlayback(PepperPluginInstanceImpl* instance,
683 PPB_Audio_Impl* audio_instance);
684 void PepperStopsPlayback(PepperPluginInstanceImpl* instance,
685 PPB_Audio_Impl* audio_instance);
686 void OnSetPepperVolume(int32_t pp_instance, double volume);
680 #endif // ENABLE_PLUGINS 687 #endif // ENABLE_PLUGINS
681 688
682 protected: 689 protected:
683 explicit RenderFrameImpl(const CreateParams& params); 690 explicit RenderFrameImpl(const CreateParams& params);
684 691
685 private: 692 private:
686 friend class RenderFrameImplTest; 693 friend class RenderFrameImplTest;
687 friend class RenderFrameObserver; 694 friend class RenderFrameObserver;
688 friend class RendererAccessibilityTest; 695 friend class RendererAccessibilityTest;
689 friend class TestRenderFrame; 696 friend class TestRenderFrame;
(...skipping 575 matching lines...) Expand 10 before | Expand all | Expand 10 after
1265 PepperPluginSet active_pepper_instances_; 1272 PepperPluginSet active_pepper_instances_;
1266 1273
1267 // Whether or not the focus is on a PPAPI plugin 1274 // Whether or not the focus is on a PPAPI plugin
1268 PepperPluginInstanceImpl* focused_pepper_plugin_; 1275 PepperPluginInstanceImpl* focused_pepper_plugin_;
1269 1276
1270 // The plugin instance that received the last mouse event. It is set to NULL 1277 // The plugin instance that received the last mouse event. It is set to NULL
1271 // if the last mouse event went to elements other than Pepper plugins. 1278 // if the last mouse event went to elements other than Pepper plugins.
1272 // |pepper_last_mouse_event_target_| is not owned by this class. We depend on 1279 // |pepper_last_mouse_event_target_| is not owned by this class. We depend on
1273 // the RenderFrameImpl to NULL it out when it destructs. 1280 // the RenderFrameImpl to NULL it out when it destructs.
1274 PepperPluginInstanceImpl* pepper_last_mouse_event_target_; 1281 PepperPluginInstanceImpl* pepper_last_mouse_event_target_;
1282
1283 std::map<int32_t, std::set<PPB_Audio_Impl*>> pepper_audios_map_;
1275 #endif 1284 #endif
1276 1285
1277 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; 1286 base::WeakPtrFactory<RenderFrameImpl> weak_factory_;
1278 1287
1279 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); 1288 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl);
1280 }; 1289 };
1281 1290
1282 } // namespace content 1291 } // namespace content
1283 1292
1284 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 1293 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698