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

Side by Side Diff: chrome/plugin/webplugin_proxy.h

Issue 196012: This changelist fixes some issues with the NPAPI WMP plugin work in Chrome. ... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 3 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
« no previous file with comments | « chrome/plugin/webplugin_delegate_stub.cc ('k') | chrome/plugin/webplugin_proxy.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__ 5 #ifndef CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
6 #define CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__ 6 #define CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/hash_tables.h" 10 #include "base/hash_tables.h"
(...skipping 10 matching lines...) Expand all
21 #include "googleurl/src/gurl.h" 21 #include "googleurl/src/gurl.h"
22 #include "ipc/ipc_message.h" 22 #include "ipc/ipc_message.h"
23 #include "webkit/glue/webplugin.h" 23 #include "webkit/glue/webplugin.h"
24 24
25 class PluginChannel; 25 class PluginChannel;
26 26
27 namespace base { 27 namespace base {
28 class WaitableEvent; 28 class WaitableEvent;
29 } 29 }
30 30
31 namespace webkit_glue { 31 class WebPluginDelegateImpl;
32 class WebPluginDelegate;
33 }
34 32
35 // This is an implementation of WebPlugin that proxies all calls to the 33 // This is an implementation of WebPlugin that proxies all calls to the
36 // renderer. 34 // renderer.
37 class WebPluginProxy : public webkit_glue::WebPlugin { 35 class WebPluginProxy : public webkit_glue::WebPlugin {
38 public: 36 public:
39 // Creates a new proxy for WebPlugin, using the given sender to send the 37 // Creates a new proxy for WebPlugin, using the given sender to send the
40 // marshalled WebPlugin calls. 38 // marshalled WebPlugin calls.
41 WebPluginProxy(PluginChannel* channel, 39 WebPluginProxy(PluginChannel* channel,
42 int route_id, 40 int route_id,
43 const GURL& page_url); 41 const GURL& page_url);
44 ~WebPluginProxy(); 42 ~WebPluginProxy();
45 43
46 void set_delegate(webkit_glue::WebPluginDelegate* d) { delegate_ = d; } 44 void set_delegate(WebPluginDelegateImpl* d) { delegate_ = d; }
47 45
48 // WebPlugin overrides 46 // WebPlugin overrides
49 void SetWindow(gfx::PluginWindowHandle window); 47 void SetWindow(gfx::PluginWindowHandle window);
50 void WillDestroyWindow(gfx::PluginWindowHandle window); 48 void WillDestroyWindow(gfx::PluginWindowHandle window);
51 #if defined(OS_WIN) 49 #if defined(OS_WIN)
52 void SetWindowlessPumpEvent(HANDLE pump_messages_event); 50 void SetWindowlessPumpEvent(HANDLE pump_messages_event);
53 // Returns true on success. 51 // Returns true on success.
54 bool SetModalDialogEvent(HANDLE modal_dialog_event); 52 bool SetModalDialogEvent(HANDLE modal_dialog_event);
55 #endif 53 #endif
56 void CancelResource(int id); 54 void CancelResource(int id);
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 156
159 typedef base::hash_map<int, webkit_glue::WebPluginResourceClient*> 157 typedef base::hash_map<int, webkit_glue::WebPluginResourceClient*>
160 ResourceClientMap; 158 ResourceClientMap;
161 ResourceClientMap resource_clients_; 159 ResourceClientMap resource_clients_;
162 160
163 scoped_refptr<PluginChannel> channel_; 161 scoped_refptr<PluginChannel> channel_;
164 int route_id_; 162 int route_id_;
165 uint32 cp_browsing_context_; 163 uint32 cp_browsing_context_;
166 NPObject* window_npobject_; 164 NPObject* window_npobject_;
167 NPObject* plugin_element_; 165 NPObject* plugin_element_;
168 webkit_glue::WebPluginDelegate* delegate_; 166 WebPluginDelegateImpl* delegate_;
169 gfx::Rect damaged_rect_; 167 gfx::Rect damaged_rect_;
170 bool waiting_for_paint_; 168 bool waiting_for_paint_;
171 scoped_ptr<base::WaitableEvent> modal_dialog_event_; 169 scoped_ptr<base::WaitableEvent> modal_dialog_event_;
172 // The url of the main frame hosting the plugin. 170 // The url of the main frame hosting the plugin.
173 GURL page_url_; 171 GURL page_url_;
174 172
175 #if defined(OS_WIN) 173 #if defined(OS_WIN)
176 // Variables used for desynchronized windowless plugin painting. See note in 174 // Variables used for desynchronized windowless plugin painting. See note in
177 // webplugin_delegate_proxy.h for how this works. 175 // webplugin_delegate_proxy.h for how this works.
178 176
(...skipping 15 matching lines...) Expand all
194 scoped_ptr<TransportDIB> windowless_dib_; 192 scoped_ptr<TransportDIB> windowless_dib_;
195 scoped_ptr<TransportDIB> background_dib_; 193 scoped_ptr<TransportDIB> background_dib_;
196 scoped_ptr<skia::PlatformCanvas> windowless_canvas_; 194 scoped_ptr<skia::PlatformCanvas> windowless_canvas_;
197 scoped_ptr<skia::PlatformCanvas> background_canvas_; 195 scoped_ptr<skia::PlatformCanvas> background_canvas_;
198 #endif 196 #endif
199 197
200 ScopedRunnableMethodFactory<WebPluginProxy> runnable_method_factory_; 198 ScopedRunnableMethodFactory<WebPluginProxy> runnable_method_factory_;
201 }; 199 };
202 200
203 #endif // CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__ 201 #endif // CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
OLDNEW
« no previous file with comments | « chrome/plugin/webplugin_delegate_stub.cc ('k') | chrome/plugin/webplugin_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698