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

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

Issue 8060055: Adding support for MediaStream and PeerConnection functionality (Closed) Base URL: http://git.chromium.org/chromium/chromium.git@trunk
Patch Set: Code review fixes. Created 9 years 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 (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_VIEW_IMPL_H_ 5 #ifndef CONTENT_RENDERER_RENDER_VIEW_IMPL_H_
6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ 6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_
7 #pragma once 7 #pragma once
8 8
9 #include <deque> 9 #include <deque>
10 #include <map> 10 #include <map>
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 #endif 55 #endif
56 56
57 class DeviceOrientationDispatcher; 57 class DeviceOrientationDispatcher;
58 class DevToolsAgent; 58 class DevToolsAgent;
59 class ExternalPopupMenu; 59 class ExternalPopupMenu;
60 class GeolocationDispatcher; 60 class GeolocationDispatcher;
61 class GURL; 61 class GURL;
62 class IntentsDispatcher; 62 class IntentsDispatcher;
63 class JavaBridgeDispatcher; 63 class JavaBridgeDispatcher;
64 class LoadProgressTracker; 64 class LoadProgressTracker;
65 class MediaStreamDispatcher;
65 class MediaStreamImpl; 66 class MediaStreamImpl;
66 class NotificationProvider; 67 class NotificationProvider;
67 class PepperDeviceTest; 68 class PepperDeviceTest;
68 struct PP_NetAddress_Private; 69 struct PP_NetAddress_Private;
69 class RenderWidgetFullscreenPepper; 70 class RenderWidgetFullscreenPepper;
70 class RendererAccessibility; 71 class RendererAccessibility;
71 class SkBitmap; 72 class SkBitmap;
72 class SpeechInputDispatcher; 73 class SpeechInputDispatcher;
73 struct ViewMsg_Navigate_Params; 74 struct ViewMsg_Navigate_Params;
74 struct ViewMsg_StopFinding_Params; 75 struct ViewMsg_StopFinding_Params;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 class WebApplicationCacheHost; 109 class WebApplicationCacheHost;
109 class WebApplicationCacheHostClient; 110 class WebApplicationCacheHostClient;
110 class WebDataSource; 111 class WebDataSource;
111 class WebDragData; 112 class WebDragData;
112 class WebGeolocationClient; 113 class WebGeolocationClient;
113 class WebIconURL; 114 class WebIconURL;
114 class WebImage; 115 class WebImage;
115 class WebMediaPlayer; 116 class WebMediaPlayer;
116 class WebMediaPlayerClient; 117 class WebMediaPlayerClient;
117 class WebMouseEvent; 118 class WebMouseEvent;
119 class WebPeerConnectionHandler;
120 class WebPeerConnectionHandlerClient;
118 class WebSpeechInputController; 121 class WebSpeechInputController;
119 class WebSpeechInputListener; 122 class WebSpeechInputListener;
120 class WebStorageNamespace; 123 class WebStorageNamespace;
121 class WebTouchEvent; 124 class WebTouchEvent;
122 class WebURLLoader; 125 class WebURLLoader;
123 class WebURLRequest; 126 class WebURLRequest;
127 class WebUserMediaClient;
124 struct WebFileChooserParams; 128 struct WebFileChooserParams;
125 struct WebFindOptions; 129 struct WebFindOptions;
126 struct WebMediaPlayerAction; 130 struct WebMediaPlayerAction;
127 struct WebPoint; 131 struct WebPoint;
128 struct WebWindowFeatures; 132 struct WebWindowFeatures;
129 } 133 }
130 134
131 // We need to prevent a page from trying to create infinite popups. It is not 135 // We need to prevent a page from trying to create infinite popups. It is not
132 // as simple as keeping a count of the number of immediate children 136 // as simple as keeping a count of the number of immediate children
133 // popups. Having an html file that window.open()s itself would create 137 // popups. Having an html file that window.open()s itself would create
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 int history_list_offset() const { return history_list_offset_; } 193 int history_list_offset() const { return history_list_offset_; }
190 194
191 const WebPreferences& webkit_preferences() const { 195 const WebPreferences& webkit_preferences() const {
192 return webkit_preferences_; 196 return webkit_preferences_;
193 } 197 }
194 198
195 void set_send_content_state_immediately(bool value) { 199 void set_send_content_state_immediately(bool value) {
196 send_content_state_immediately_ = value; 200 send_content_state_immediately_ = value;
197 } 201 }
198 202
203 MediaStreamDispatcher* media_stream_dispatcher() {
204 return media_stream_dispatcher_;
205 }
206
199 // Current P2PSocketDispatcher. Set to NULL if P2P API is disabled. 207 // Current P2PSocketDispatcher. Set to NULL if P2P API is disabled.
200 content::P2PSocketDispatcher* p2p_socket_dispatcher() { 208 content::P2PSocketDispatcher* p2p_socket_dispatcher() {
201 return p2p_socket_dispatcher_; 209 return p2p_socket_dispatcher_;
202 } 210 }
203 211
212 WebKit::WebPeerConnectionHandler* CreatePeerConnectionHandler(
213 WebKit::WebPeerConnectionHandlerClient* client);
214
204 // Functions to add and remove observers for this object. 215 // Functions to add and remove observers for this object.
205 void AddObserver(content::RenderViewObserver* observer); 216 void AddObserver(content::RenderViewObserver* observer);
206 void RemoveObserver(content::RenderViewObserver* observer); 217 void RemoveObserver(content::RenderViewObserver* observer);
207 218
208 // Adds the given file chooser request to the file_chooser_completion_ queue 219 // Adds the given file chooser request to the file_chooser_completion_ queue
209 // (see that var for more) and requests the chooser be displayed if there are 220 // (see that var for more) and requests the chooser be displayed if there are
210 // no other waiting items in the queue. 221 // no other waiting items in the queue.
211 // 222 //
212 // Returns true if the chooser was successfully scheduled. False means we 223 // Returns true if the chooser was successfully scheduled. False means we
213 // didn't schedule anything. 224 // didn't schedule anything.
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 virtual void registerIntentHandler(const WebKit::WebString& action, 393 virtual void registerIntentHandler(const WebKit::WebString& action,
383 const WebKit::WebString& type, 394 const WebKit::WebString& type,
384 const WebKit::WebString& href, 395 const WebKit::WebString& href,
385 const WebKit::WebString& title, 396 const WebKit::WebString& title,
386 const WebKit::WebString& disposition); 397 const WebKit::WebString& disposition);
387 virtual WebKit::WebPageVisibilityState visibilityState() const; 398 virtual WebKit::WebPageVisibilityState visibilityState() const;
388 virtual void startActivity(const WebKit::WebString& action, 399 virtual void startActivity(const WebKit::WebString& action,
389 const WebKit::WebString& type, 400 const WebKit::WebString& type,
390 const WebKit::WebString& data, 401 const WebKit::WebString& data,
391 int intent_id); 402 int intent_id);
403 virtual WebKit::WebUserMediaClient* userMediaClient();
392 404
393 // WebKit::WebFrameClient implementation ------------------------------------- 405 // WebKit::WebFrameClient implementation -------------------------------------
394 406
395 virtual WebKit::WebPlugin* createPlugin( 407 virtual WebKit::WebPlugin* createPlugin(
396 WebKit::WebFrame* frame, 408 WebKit::WebFrame* frame,
397 const WebKit::WebPluginParams& params); 409 const WebKit::WebPluginParams& params);
398 virtual WebKit::WebSharedWorker* createSharedWorker( 410 virtual WebKit::WebSharedWorker* createSharedWorker(
399 WebKit::WebFrame* frame, const WebKit::WebURL& url, 411 WebKit::WebFrame* frame, const WebKit::WebURL& url,
400 const WebKit::WebString& name, unsigned long long documentId); 412 const WebKit::WebString& name, unsigned long long documentId);
401 virtual WebKit::WebMediaPlayer* createMediaPlayer( 413 virtual WebKit::WebMediaPlayer* createMediaPlayer(
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after
859 void ZoomFactorHelper(content::PageZoom zoom, int zoom_center_x, 871 void ZoomFactorHelper(content::PageZoom zoom, int zoom_center_x,
860 int zoom_center_y, float scaling_increment); 872 int zoom_center_y, float scaling_increment);
861 873
862 void AltErrorPageFinished(WebKit::WebFrame* frame, 874 void AltErrorPageFinished(WebKit::WebFrame* frame,
863 const WebKit::WebURLError& original_error, 875 const WebKit::WebURLError& original_error,
864 const std::string& html); 876 const std::string& html);
865 877
866 // Check whether the preferred size has changed. 878 // Check whether the preferred size has changed.
867 void CheckPreferredSize(); 879 void CheckPreferredSize();
868 880
881 void CreateMediaStreamImpl();
882
869 // This callback is triggered when DownloadFavicon completes, either 883 // This callback is triggered when DownloadFavicon completes, either
870 // succesfully or with a failure. See DownloadFavicon for more 884 // succesfully or with a failure. See DownloadFavicon for more
871 // details. 885 // details.
872 void DidDownloadFavicon(webkit_glue::ImageResourceFetcher* fetcher, 886 void DidDownloadFavicon(webkit_glue::ImageResourceFetcher* fetcher,
873 const SkBitmap& image); 887 const SkBitmap& image);
874 888
875 // Requests to download a favicon image. When done, the RenderView is notified 889 // Requests to download a favicon image. When done, the RenderView is notified
876 // by way of DidDownloadFavicon. Returns true if the request was successfully 890 // by way of DidDownloadFavicon. Returns true if the request was successfully
877 // started, false otherwise. id is used to uniquely identify the request and 891 // started, false otherwise. id is used to uniquely identify the request and
878 // passed back to the DidDownloadFavicon method. If the image has multiple 892 // passed back to the DidDownloadFavicon method. If the image has multiple
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
1134 1148
1135 // The intents dispatcher attached to this view. Not lazily initialized. 1149 // The intents dispatcher attached to this view. Not lazily initialized.
1136 IntentsDispatcher* intents_dispatcher_; 1150 IntentsDispatcher* intents_dispatcher_;
1137 1151
1138 // The speech dispatcher attached to this view, lazily initialized. 1152 // The speech dispatcher attached to this view, lazily initialized.
1139 SpeechInputDispatcher* speech_input_dispatcher_; 1153 SpeechInputDispatcher* speech_input_dispatcher_;
1140 1154
1141 // Device orientation dispatcher attached to this view; lazily initialized. 1155 // Device orientation dispatcher attached to this view; lazily initialized.
1142 DeviceOrientationDispatcher* device_orientation_dispatcher_; 1156 DeviceOrientationDispatcher* device_orientation_dispatcher_;
1143 1157
1158 // MediaStream dispatcher attached to this view; lazily initialized.
1159 MediaStreamDispatcher* media_stream_dispatcher_;
1160
1144 // MediaStreamImpl attached to this view; lazily initialized. 1161 // MediaStreamImpl attached to this view; lazily initialized.
1145 scoped_refptr<MediaStreamImpl> media_stream_impl_; 1162 scoped_refptr<MediaStreamImpl> media_stream_impl_;
1146 1163
1147 // Dispatches all P2P socket used by the renderer. 1164 // Dispatches all P2P socket used by the renderer.
1148 content::P2PSocketDispatcher* p2p_socket_dispatcher_; 1165 content::P2PSocketDispatcher* p2p_socket_dispatcher_;
1149 1166
1150 DevToolsAgent* devtools_agent_; 1167 DevToolsAgent* devtools_agent_;
1151 1168
1152 RendererAccessibility* renderer_accessibility_; 1169 RendererAccessibility* renderer_accessibility_;
1153 1170
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
1218 // bunch of stuff, you should probably create a helper class and put your 1235 // bunch of stuff, you should probably create a helper class and put your
1219 // data and methods on that to avoid bloating RenderView more. You can 1236 // data and methods on that to avoid bloating RenderView more. You can
1220 // use the Observer interface to filter IPC messages and receive frame change 1237 // use the Observer interface to filter IPC messages and receive frame change
1221 // notifications. 1238 // notifications.
1222 // --------------------------------------------------------------------------- 1239 // ---------------------------------------------------------------------------
1223 1240
1224 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); 1241 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl);
1225 }; 1242 };
1226 1243
1227 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ 1244 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698