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

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

Issue 18082: Improve scrolling performance when there are many windowed plugins in a page.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Call DestroyWindow on the right thread & ensure NPP_SetWindow is called right away Created 11 years, 11 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) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 "base/hash_tables.h" 8 #include "base/hash_tables.h"
9 #include "base/ref_counted.h" 9 #include "base/ref_counted.h"
10 #include "base/scoped_handle.h" 10 #include "base/scoped_handle.h"
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 74
75 void HandleURLRequest(const char *method, 75 void HandleURLRequest(const char *method,
76 bool is_javascript_url, 76 bool is_javascript_url,
77 const char* target, unsigned int len, 77 const char* target, unsigned int len,
78 const char* buf, bool is_file_data, 78 const char* buf, bool is_file_data,
79 bool notify, const char* url, 79 bool notify, const char* url,
80 void* notify_data, bool popups_allowed); 80 void* notify_data, bool popups_allowed);
81 81
82 void UpdateGeometry(const gfx::Rect& window_rect, 82 void UpdateGeometry(const gfx::Rect& window_rect,
83 const gfx::Rect& clip_rect, 83 const gfx::Rect& clip_rect,
84 const std::vector<gfx::Rect>& cutout_rects,
85 bool visible,
86 const base::SharedMemoryHandle& windowless_buffer, 84 const base::SharedMemoryHandle& windowless_buffer,
87 const base::SharedMemoryHandle& background_buffer); 85 const base::SharedMemoryHandle& background_buffer);
88 86
89 void CancelDocumentLoad(); 87 void CancelDocumentLoad();
90 88
91 void InitiateHTTPRangeRequest(const char* url, 89 void InitiateHTTPRangeRequest(const char* url,
92 const char* range_info, 90 const char* range_info,
93 void* existing_stream, 91 void* existing_stream,
94 bool notify_needed, 92 bool notify_needed,
95 HANDLE notify_data); 93 HANDLE notify_data);
(...skipping 24 matching lines...) Expand all
120 118
121 scoped_refptr<PluginChannel> channel_; 119 scoped_refptr<PluginChannel> channel_;
122 int route_id_; 120 int route_id_;
123 NPObject* window_npobject_; 121 NPObject* window_npobject_;
124 NPObject* plugin_element_; 122 NPObject* plugin_element_;
125 WebPluginDelegateImpl* delegate_; 123 WebPluginDelegateImpl* delegate_;
126 gfx::Rect damaged_rect_; 124 gfx::Rect damaged_rect_;
127 bool waiting_for_paint_; 125 bool waiting_for_paint_;
128 uint32 cp_browsing_context_; 126 uint32 cp_browsing_context_;
129 ScopedHandle modal_dialog_event_; 127 ScopedHandle modal_dialog_event_;
128 HWND parent_window_;
130 129
131 // Variables used for desynchronized windowless plugin painting. See note in 130 // Variables used for desynchronized windowless plugin painting. See note in
132 // webplugin_delegate_proxy.h for how this works. 131 // webplugin_delegate_proxy.h for how this works.
133 132
134 // These hold the bitmap where the plugin draws. 133 // These hold the bitmap where the plugin draws.
135 ScopedHandle windowless_shared_section_; 134 ScopedHandle windowless_shared_section_;
136 ScopedBitmap windowless_bitmap_; 135 ScopedBitmap windowless_bitmap_;
137 ScopedHDC windowless_hdc_; 136 ScopedHDC windowless_hdc_;
138 137
139 // These hold the bitmap of the background image. 138 // These hold the bitmap of the background image.
140 ScopedHandle background_shared_section_; 139 ScopedHandle background_shared_section_;
141 ScopedBitmap background_bitmap_; 140 ScopedBitmap background_bitmap_;
142 ScopedHDC background_hdc_; 141 ScopedHDC background_hdc_;
143 142
144 ScopedRunnableMethodFactory<WebPluginProxy> runnable_method_factory_; 143 ScopedRunnableMethodFactory<WebPluginProxy> runnable_method_factory_;
145 }; 144 };
146 145
147 #endif // CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__ 146 #endif // CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698