| OLD | NEW |
| 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 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 280 // type. Returns false if no plugin was found. | 280 // type. Returns false if no plugin was found. |
| 281 // |actual_mime_type| is the actual mime type supported by the | 281 // |actual_mime_type| is the actual mime type supported by the |
| 282 // plugin found that match the URL given (one for each item in | 282 // plugin found that match the URL given (one for each item in |
| 283 // |info|). | 283 // |info|). |
| 284 CONTENT_EXPORT bool GetPluginInfo(const GURL& url, | 284 CONTENT_EXPORT bool GetPluginInfo(const GURL& url, |
| 285 const GURL& page_url, | 285 const GURL& page_url, |
| 286 const std::string& mime_type, | 286 const std::string& mime_type, |
| 287 webkit::WebPluginInfo* plugin_info, | 287 webkit::WebPluginInfo* plugin_info, |
| 288 std::string* actual_mime_type); | 288 std::string* actual_mime_type); |
| 289 | 289 |
| 290 // Helper function to check that TCP/UDP private APIs are allowed for current |
| 291 // page. This check actually allows socket usage for NativeClient code only. |
| 292 // It is better to move this check to browser process but Pepper message |
| 293 // filters in browser process have no context about page that sent |
| 294 // the request. Doing this check in render process is safe because NaCl code |
| 295 // is executed in separate NaCl process. |
| 296 bool CanUseSocketAPIs(); |
| 297 |
| 290 // IPC::Channel::Listener implementation ------------------------------------- | 298 // IPC::Channel::Listener implementation ------------------------------------- |
| 291 | 299 |
| 292 virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE; | 300 virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE; |
| 293 | 301 |
| 294 // WebKit::WebWidgetClient implementation ------------------------------------ | 302 // WebKit::WebWidgetClient implementation ------------------------------------ |
| 295 | 303 |
| 296 // Most methods are handled by RenderWidget. | 304 // Most methods are handled by RenderWidget. |
| 297 virtual void didFocus(); | 305 virtual void didFocus(); |
| 298 virtual void didBlur(); | 306 virtual void didBlur(); |
| 299 virtual void show(WebKit::WebNavigationPolicy policy); | 307 virtual void show(WebKit::WebNavigationPolicy policy); |
| (...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 735 const IPC::ChannelHandle& handle); | 743 const IPC::ChannelHandle& handle); |
| 736 void OnCancelDownload(int32 download_id); | 744 void OnCancelDownload(int32 download_id); |
| 737 void OnClearFocusedNode(); | 745 void OnClearFocusedNode(); |
| 738 void OnClosePage(); | 746 void OnClosePage(); |
| 739 #if defined(ENABLE_FLAPPER_HACKS) | 747 #if defined(ENABLE_FLAPPER_HACKS) |
| 740 void OnConnectTcpACK(int request_id, | 748 void OnConnectTcpACK(int request_id, |
| 741 IPC::PlatformFileForTransit socket_for_transit, | 749 IPC::PlatformFileForTransit socket_for_transit, |
| 742 const PP_NetAddress_Private& local_addr, | 750 const PP_NetAddress_Private& local_addr, |
| 743 const PP_NetAddress_Private& remote_addr); | 751 const PP_NetAddress_Private& remote_addr); |
| 744 #endif | 752 #endif |
| 753 void OnTCPSocketConnectACK(uint32 plugin_dispatcher_id, |
| 754 uint32 socket_id, |
| 755 bool succeeded, |
| 756 const PP_NetAddress_Private& local_addr, |
| 757 const PP_NetAddress_Private& remote_addr); |
| 758 void OnTCPSocketSSLHandshakeACK(uint32 plugin_dispatcher_id, |
| 759 uint32 socket_id, |
| 760 bool succeeded); |
| 761 void OnTCPSocketReadACK(uint32 plugin_dispatcher_id, |
| 762 uint32 socket_id, |
| 763 bool succeeded, |
| 764 const std::string& data); |
| 765 void OnTCPSocketWriteACK(uint32 plugin_dispatcher_id, |
| 766 uint32 socket_id, |
| 767 bool succeeded, |
| 768 int32_t bytes_written); |
| 769 void OnUDPSocketBindACK(uint32 plugin_dispatcher_id, |
| 770 uint32 socket_id, |
| 771 bool succeeded); |
| 772 void OnUDPSocketSendToACK(uint32 plugin_dispatcher_id, |
| 773 uint32 socket_id, |
| 774 bool succeeded, |
| 775 int32_t bytes_written); |
| 776 void OnUDPSocketRecvFromACK(uint32 plugin_dispatcher_id, |
| 777 uint32 socket_id, |
| 778 bool succeeded, |
| 779 const std::string& data, |
| 780 const PP_NetAddress_Private& addr); |
| 781 |
| 745 void OnContextMenuClosed( | 782 void OnContextMenuClosed( |
| 746 const webkit_glue::CustomContextMenuContext& custom_context); | 783 const webkit_glue::CustomContextMenuContext& custom_context); |
| 747 void OnCopy(); | 784 void OnCopy(); |
| 748 void OnCopyImageAt(int x, int y); | 785 void OnCopyImageAt(int x, int y); |
| 749 #if defined(OS_MACOSX) | 786 #if defined(OS_MACOSX) |
| 750 void OnCopyToFindPboard(); | 787 void OnCopyToFindPboard(); |
| 751 #endif | 788 #endif |
| 752 void OnCut(); | 789 void OnCut(); |
| 753 void OnCSSInsertRequest(const string16& frame_xpath, | 790 void OnCSSInsertRequest(const string16& frame_xpath, |
| 754 const std::string& css); | 791 const std::string& css); |
| (...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1203 scoped_ptr<LoadProgressTracker> load_progress_tracker_; | 1240 scoped_ptr<LoadProgressTracker> load_progress_tracker_; |
| 1204 | 1241 |
| 1205 // All the registered observers. We expect this list to be small, so vector | 1242 // All the registered observers. We expect this list to be small, so vector |
| 1206 // is fine. | 1243 // is fine. |
| 1207 ObserverList<content::RenderViewObserver> observers_; | 1244 ObserverList<content::RenderViewObserver> observers_; |
| 1208 | 1245 |
| 1209 // Used to inform didChangeSelection() when it is called in the context | 1246 // Used to inform didChangeSelection() when it is called in the context |
| 1210 // of handling a ViewMsg_SelectRange IPC. | 1247 // of handling a ViewMsg_SelectRange IPC. |
| 1211 bool handling_select_range_; | 1248 bool handling_select_range_; |
| 1212 | 1249 |
| 1250 // Set of origins that can use TCP/UDP private APIs from NaCl. |
| 1251 std::set<std::string> allowed_socket_origins_; |
| 1252 |
| 1213 // --------------------------------------------------------------------------- | 1253 // --------------------------------------------------------------------------- |
| 1214 // ADDING NEW DATA? Please see if it fits appropriately in one of the above | 1254 // ADDING NEW DATA? Please see if it fits appropriately in one of the above |
| 1215 // sections rather than throwing it randomly at the end. If you're adding a | 1255 // sections rather than throwing it randomly at the end. If you're adding a |
| 1216 // bunch of stuff, you should probably create a helper class and put your | 1256 // bunch of stuff, you should probably create a helper class and put your |
| 1217 // data and methods on that to avoid bloating RenderView more. You can | 1257 // data and methods on that to avoid bloating RenderView more. You can |
| 1218 // use the Observer interface to filter IPC messages and receive frame change | 1258 // use the Observer interface to filter IPC messages and receive frame change |
| 1219 // notifications. | 1259 // notifications. |
| 1220 // --------------------------------------------------------------------------- | 1260 // --------------------------------------------------------------------------- |
| 1221 | 1261 |
| 1222 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); | 1262 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); |
| 1223 }; | 1263 }; |
| 1224 | 1264 |
| 1225 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 1265 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
| OLD | NEW |