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

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

Issue 9108001: Adds support for calling postMessage on a frame living in a different renderer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Use FromRoutingID Created 8 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 25 matching lines...) Expand all
36 #include "content/renderer/renderer_webcookiejar_impl.h" 36 #include "content/renderer/renderer_webcookiejar_impl.h"
37 #include "ipc/ipc_platform_file.h" 37 #include "ipc/ipc_platform_file.h"
38 #include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h" 38 #include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h"
39 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrameClient.h" 39 #include "third_party/WebKit/Source/WebKit/chromium/public/WebFrameClient.h"
40 #include "third_party/WebKit/Source/WebKit/chromium/public/WebHistoryItem.h" 40 #include "third_party/WebKit/Source/WebKit/chromium/public/WebHistoryItem.h"
41 #include "third_party/WebKit/Source/WebKit/chromium/public/WebIconURL.h" 41 #include "third_party/WebKit/Source/WebKit/chromium/public/WebIconURL.h"
42 #include "third_party/WebKit/Source/WebKit/chromium/public/WebNavigationType.h" 42 #include "third_party/WebKit/Source/WebKit/chromium/public/WebNavigationType.h"
43 #include "third_party/WebKit/Source/WebKit/chromium/public/WebNode.h" 43 #include "third_party/WebKit/Source/WebKit/chromium/public/WebNode.h"
44 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPageSerializerClie nt.h" 44 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPageSerializerClie nt.h"
45 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPageVisibilityStat e.h" 45 #include "third_party/WebKit/Source/WebKit/chromium/public/WebPageVisibilityStat e.h"
46 #include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityOrigin.h"
46 #include "third_party/WebKit/Source/WebKit/chromium/public/WebTextDirection.h" 47 #include "third_party/WebKit/Source/WebKit/chromium/public/WebTextDirection.h"
47 #include "third_party/WebKit/Source/WebKit/chromium/public/WebViewClient.h" 48 #include "third_party/WebKit/Source/WebKit/chromium/public/WebViewClient.h"
48 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebFileSyste m.h" 49 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebFileSyste m.h"
49 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC ontext3D.h" 50 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGraphicsC ontext3D.h"
50 #include "ui/base/javascript_message_type.h" 51 #include "ui/base/javascript_message_type.h"
51 #include "ui/surface/transport_dib.h" 52 #include "ui/surface/transport_dib.h"
52 #include "webkit/glue/webpreferences.h" 53 #include "webkit/glue/webpreferences.h"
53 #include "webkit/media/webmediaplayer_delegate.h" 54 #include "webkit/media/webmediaplayer_delegate.h"
54 #include "webkit/plugins/npapi/webplugin_page_delegate.h" 55 #include "webkit/plugins/npapi/webplugin_page_delegate.h"
55 56
(...skipping 17 matching lines...) Expand all
73 class MediaStreamImpl; 74 class MediaStreamImpl;
74 class MouseLockDispatcher; 75 class MouseLockDispatcher;
75 class NotificationProvider; 76 class NotificationProvider;
76 class PepperDeviceTest; 77 class PepperDeviceTest;
77 struct PP_NetAddress_Private; 78 struct PP_NetAddress_Private;
78 class RenderWidgetFullscreenPepper; 79 class RenderWidgetFullscreenPepper;
79 class RendererAccessibility; 80 class RendererAccessibility;
80 class RendererWebColorChooserImpl; 81 class RendererWebColorChooserImpl;
81 class SkBitmap; 82 class SkBitmap;
82 class InputTagSpeechDispatcher; 83 class InputTagSpeechDispatcher;
84 struct ViewHostMsg_PostMessage_Params;
83 struct ViewMsg_Navigate_Params; 85 struct ViewMsg_Navigate_Params;
84 struct ViewMsg_StopFinding_Params; 86 struct ViewMsg_StopFinding_Params;
85 struct ViewMsg_SwapOut_Params; 87 struct ViewMsg_SwapOut_Params;
86 struct WebDropData; 88 struct WebDropData;
87 class WebIntentsHost; 89 class WebIntentsHost;
88 class WebPluginDelegateProxy; 90 class WebPluginDelegateProxy;
89 class WebUIBindings; 91 class WebUIBindings;
90 92
91 namespace content { 93 namespace content {
92 class DocumentState; 94 class DocumentState;
(...skipping 20 matching lines...) Expand all
113 } // namespace webkit 115 } // namespace webkit
114 116
115 namespace webkit_glue { 117 namespace webkit_glue {
116 class ImageResourceFetcher; 118 class ImageResourceFetcher;
117 class ResourceFetcher; 119 class ResourceFetcher;
118 } 120 }
119 121
120 namespace WebKit { 122 namespace WebKit {
121 class WebApplicationCacheHost; 123 class WebApplicationCacheHost;
122 class WebApplicationCacheHostClient; 124 class WebApplicationCacheHostClient;
125 class WebDOMMessageEvent;
123 class WebDataSource; 126 class WebDataSource;
124 class WebDragData; 127 class WebDragData;
125 class WebGeolocationClient; 128 class WebGeolocationClient;
126 class WebIconURL; 129 class WebIconURL;
127 class WebImage; 130 class WebImage;
128 class WebPeerConnection00Handler; 131 class WebPeerConnection00Handler;
129 class WebPeerConnection00HandlerClient; 132 class WebPeerConnection00HandlerClient;
130 class WebMediaPlayer; 133 class WebMediaPlayer;
131 class WebMediaPlayerClient; 134 class WebMediaPlayerClient;
132 class WebMouseEvent; 135 class WebMouseEvent;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 bool is_renderer_created, 199 bool is_renderer_created,
197 bool swapped_out, 200 bool swapped_out,
198 int32 next_page_id, 201 int32 next_page_id,
199 const WebKit::WebScreenInfo& screen_info, 202 const WebKit::WebScreenInfo& screen_info,
200 bool guest, 203 bool guest,
201 AccessibilityMode accessibility_mode); 204 AccessibilityMode accessibility_mode);
202 205
203 // Returns the RenderViewImpl containing the given WebView. 206 // Returns the RenderViewImpl containing the given WebView.
204 CONTENT_EXPORT static RenderViewImpl* FromWebView(WebKit::WebView* webview); 207 CONTENT_EXPORT static RenderViewImpl* FromWebView(WebKit::WebView* webview);
205 208
209 // Returns the RenderViewImpl with the given routing ID, or NULL.
210 static RenderViewImpl* FromRoutingID(int32 routing_id);
jam 2012/05/14 06:41:45 nit: it seems best to avoid exposing this outside
Charlie Reis 2012/05/14 17:38:43 Made it a static helper function in render_view_im
211
206 // May return NULL when the view is closing. 212 // May return NULL when the view is closing.
207 CONTENT_EXPORT WebKit::WebView* webview() const; 213 CONTENT_EXPORT WebKit::WebView* webview() const;
208 214
209 // WebGraphicsContext3DSwapBuffersClient implementation. 215 // WebGraphicsContext3DSwapBuffersClient implementation.
210 216
211 // Called by a GraphicsContext associated with this view when swapbuffers 217 // Called by a GraphicsContext associated with this view when swapbuffers
212 // is posted, completes or is aborted. 218 // is posted, completes or is aborted.
213 virtual void OnViewContextSwapBuffersPosted() OVERRIDE; 219 virtual void OnViewContextSwapBuffersPosted() OVERRIDE;
214 virtual void OnViewContextSwapBuffersComplete() OVERRIDE; 220 virtual void OnViewContextSwapBuffersComplete() OVERRIDE;
215 virtual void OnViewContextSwapBuffersAborted() OVERRIDE; 221 virtual void OnViewContextSwapBuffersAborted() OVERRIDE;
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
588 WebKit::WebStorageQuotaType type, 594 WebKit::WebStorageQuotaType type,
589 unsigned long long requested_size, 595 unsigned long long requested_size,
590 WebKit::WebStorageQuotaCallbacks* callbacks); 596 WebKit::WebStorageQuotaCallbacks* callbacks);
591 virtual void registerIntentService( 597 virtual void registerIntentService(
592 WebKit::WebFrame* frame, 598 WebKit::WebFrame* frame,
593 const WebKit::WebIntentServiceInfo& service); 599 const WebKit::WebIntentServiceInfo& service);
594 virtual void dispatchIntent(WebKit::WebFrame* frame, 600 virtual void dispatchIntent(WebKit::WebFrame* frame,
595 const WebKit::WebIntentRequest& intentRequest); 601 const WebKit::WebIntentRequest& intentRequest);
596 virtual void willOpenSocketStream( 602 virtual void willOpenSocketStream(
597 WebKit::WebSocketStreamHandle* handle); 603 WebKit::WebSocketStreamHandle* handle);
598 604
jam 2012/05/14 06:41:45 nit: no blank line
Charlie Reis 2012/05/14 17:38:43 Done.
605 virtual bool willCheckAndDispatchMessageEvent(
606 WebKit::WebFrame* source,
607 WebKit::WebSecurityOrigin targetOrigin,
608 WebKit::WebDOMMessageEvent event) OVERRIDE;
609
599 // WebKit::WebPageSerializerClient implementation ---------------------------- 610 // WebKit::WebPageSerializerClient implementation ----------------------------
600 611
601 virtual void didSerializeDataForFrame( 612 virtual void didSerializeDataForFrame(
602 const WebKit::WebURL& frame_url, 613 const WebKit::WebURL& frame_url,
603 const WebKit::WebCString& data, 614 const WebKit::WebCString& data,
604 PageSerializationStatus status) OVERRIDE; 615 PageSerializationStatus status) OVERRIDE;
605 616
606 // content::RenderView implementation ---------------------------------------- 617 // content::RenderView implementation ----------------------------------------
607 618
608 virtual bool Send(IPC::Message* message) OVERRIDE; 619 virtual bool Send(IPC::Message* message) OVERRIDE;
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
865 const WebKit::WebMediaPlayerAction& action); 876 const WebKit::WebMediaPlayerAction& action);
866 void OnPluginActionAt(const gfx::Point& location, 877 void OnPluginActionAt(const gfx::Point& location,
867 const WebKit::WebPluginAction& action); 878 const WebKit::WebPluginAction& action);
868 void OnMoveOrResizeStarted(); 879 void OnMoveOrResizeStarted();
869 CONTENT_EXPORT void OnNavigate(const ViewMsg_Navigate_Params& params); 880 CONTENT_EXPORT void OnNavigate(const ViewMsg_Navigate_Params& params);
870 void OnPaste(); 881 void OnPaste();
871 void OnPasteAndMatchStyle(); 882 void OnPasteAndMatchStyle();
872 #if defined(OS_MACOSX) 883 #if defined(OS_MACOSX)
873 void OnPluginImeCompositionCompleted(const string16& text, int plugin_id); 884 void OnPluginImeCompositionCompleted(const string16& text, int plugin_id);
874 #endif 885 #endif
886 void OnPostMessageEvent(const ViewHostMsg_PostMessage_Params& params);
875 void OnRedo(); 887 void OnRedo();
876 void OnReloadFrame(); 888 void OnReloadFrame();
877 void OnReplace(const string16& text); 889 void OnReplace(const string16& text);
878 void OnResetPageEncodingToDefault(); 890 void OnResetPageEncodingToDefault();
879 void OnScriptEvalRequest(const string16& frame_xpath, 891 void OnScriptEvalRequest(const string16& frame_xpath,
880 const string16& jscript, 892 const string16& jscript,
881 int id, 893 int id,
882 bool notify_result); 894 bool notify_result);
883 void OnSelectAll(); 895 void OnSelectAll();
884 void OnSelectRange(const gfx::Point& start, const gfx::Point& end); 896 void OnSelectRange(const gfx::Point& start, const gfx::Point& end);
(...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after
1343 // bunch of stuff, you should probably create a helper class and put your 1355 // bunch of stuff, you should probably create a helper class and put your
1344 // data and methods on that to avoid bloating RenderView more. You can 1356 // data and methods on that to avoid bloating RenderView more. You can
1345 // use the Observer interface to filter IPC messages and receive frame change 1357 // use the Observer interface to filter IPC messages and receive frame change
1346 // notifications. 1358 // notifications.
1347 // --------------------------------------------------------------------------- 1359 // ---------------------------------------------------------------------------
1348 1360
1349 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); 1361 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl);
1350 }; 1362 };
1351 1363
1352 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ 1364 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698