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

Side by Side Diff: webkit/plugins/ppapi/ppapi_plugin_instance.cc

Issue 6062003: Added ppapi::Context3D interface. The API has already been reviewed. I am add... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 12 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #include "webkit/plugins/ppapi/ppapi_plugin_instance.h" 5 #include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/metrics/histogram.h" 8 #include "base/metrics/histogram.h"
9 #include "base/scoped_ptr.h" 9 #include "base/scoped_ptr.h"
10 #include "base/utf_string_conversions.h" 10 #include "base/utf_string_conversions.h"
(...skipping 27 matching lines...) Expand all
38 #include "third_party/WebKit/WebKit/chromium/public/WebRect.h" 38 #include "third_party/WebKit/WebKit/chromium/public/WebRect.h"
39 #include "third_party/WebKit/WebKit/chromium/public/WebString.h" 39 #include "third_party/WebKit/WebKit/chromium/public/WebString.h"
40 #include "third_party/WebKit/WebKit/chromium/public/WebURLRequest.h" 40 #include "third_party/WebKit/WebKit/chromium/public/WebURLRequest.h"
41 #include "third_party/WebKit/WebKit/chromium/public/WebView.h" 41 #include "third_party/WebKit/WebKit/chromium/public/WebView.h"
42 #include "webkit/plugins/ppapi/common.h" 42 #include "webkit/plugins/ppapi/common.h"
43 #include "webkit/plugins/ppapi/event_conversion.h" 43 #include "webkit/plugins/ppapi/event_conversion.h"
44 #include "webkit/plugins/ppapi/fullscreen_container.h" 44 #include "webkit/plugins/ppapi/fullscreen_container.h"
45 #include "webkit/plugins/ppapi/plugin_delegate.h" 45 #include "webkit/plugins/ppapi/plugin_delegate.h"
46 #include "webkit/plugins/ppapi/plugin_module.h" 46 #include "webkit/plugins/ppapi/plugin_module.h"
47 #include "webkit/plugins/ppapi/ppb_buffer_impl.h" 47 #include "webkit/plugins/ppapi/ppb_buffer_impl.h"
48 #include "webkit/plugins/ppapi/ppb_context_3d_impl.h"
48 #include "webkit/plugins/ppapi/ppb_graphics_2d_impl.h" 49 #include "webkit/plugins/ppapi/ppb_graphics_2d_impl.h"
49 #include "webkit/plugins/ppapi/ppb_graphics_3d_impl.h"
50 #include "webkit/plugins/ppapi/ppb_image_data_impl.h" 50 #include "webkit/plugins/ppapi/ppb_image_data_impl.h"
51 #include "webkit/plugins/ppapi/ppb_url_loader_impl.h" 51 #include "webkit/plugins/ppapi/ppb_url_loader_impl.h"
52 #include "webkit/plugins/ppapi/ppp_pdf.h" 52 #include "webkit/plugins/ppapi/ppp_pdf.h"
53 #include "webkit/plugins/ppapi/string.h" 53 #include "webkit/plugins/ppapi/string.h"
54 #include "webkit/plugins/ppapi/var.h" 54 #include "webkit/plugins/ppapi/var.h"
55 55
56 #if defined(OS_MACOSX) 56 #if defined(OS_MACOSX)
57 #include "base/mac_util.h" 57 #include "base/mac_util.h"
58 #include "base/mac/scoped_cftyperef.h" 58 #include "base/mac/scoped_cftyperef.h"
59 #endif 59 #endif
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 bound_graphics_3d()->BindToInstance(NULL); 434 bound_graphics_3d()->BindToInstance(NULL);
435 } 435 }
436 InvalidateRect(gfx::Rect()); 436 InvalidateRect(gfx::Rect());
437 } 437 }
438 bound_graphics_ = NULL; 438 bound_graphics_ = NULL;
439 return true; 439 return true;
440 } 440 }
441 441
442 scoped_refptr<PPB_Graphics2D_Impl> graphics_2d = 442 scoped_refptr<PPB_Graphics2D_Impl> graphics_2d =
443 Resource::GetAs<PPB_Graphics2D_Impl>(graphics_id); 443 Resource::GetAs<PPB_Graphics2D_Impl>(graphics_id);
444 scoped_refptr<PPB_Graphics3D_Impl> graphics_3d = 444 scoped_refptr<PPB_Context3D_Impl> graphics_3d =
445 Resource::GetAs<PPB_Graphics3D_Impl>(graphics_id); 445 Resource::GetAs<PPB_Context3D_Impl>(graphics_id);
446 446
447 if (graphics_2d) { 447 if (graphics_2d) {
448 if (!graphics_2d->BindToInstance(this)) 448 if (!graphics_2d->BindToInstance(this))
449 return false; // Can't bind to more than one instance. 449 return false; // Can't bind to more than one instance.
450 450
451 // See http://crbug.com/49403: this can be further optimized by keeping the 451 // See http://crbug.com/49403: this can be further optimized by keeping the
452 // old device around and painting from it. 452 // old device around and painting from it.
453 if (bound_graphics_2d()) { 453 if (bound_graphics_2d()) {
454 // Start the new image with the content of the old image until the plugin 454 // Start the new image with the content of the old image until the plugin
455 // repaints. 455 // repaints.
(...skipping 711 matching lines...) Expand 10 before | Expand all | Expand 10 after
1167 } 1167 }
1168 #endif // defined(OS_MACOSX) 1168 #endif // defined(OS_MACOSX)
1169 1169
1170 PPB_Graphics2D_Impl* PluginInstance::bound_graphics_2d() const { 1170 PPB_Graphics2D_Impl* PluginInstance::bound_graphics_2d() const {
1171 if (bound_graphics_.get() == NULL) 1171 if (bound_graphics_.get() == NULL)
1172 return NULL; 1172 return NULL;
1173 1173
1174 return bound_graphics_->Cast<PPB_Graphics2D_Impl>(); 1174 return bound_graphics_->Cast<PPB_Graphics2D_Impl>();
1175 } 1175 }
1176 1176
1177 PPB_Graphics3D_Impl* PluginInstance::bound_graphics_3d() const { 1177 PPB_Context3D_Impl* PluginInstance::bound_graphics_3d() const {
1178 if (bound_graphics_.get() == NULL) 1178 if (bound_graphics_.get() == NULL)
1179 return NULL; 1179 return NULL;
1180 1180
1181 return bound_graphics_->Cast<PPB_Graphics3D_Impl>(); 1181 return bound_graphics_->Cast<PPB_Context3D_Impl>();
1182 } 1182 }
1183 1183
1184 } // namespace ppapi 1184 } // namespace ppapi
1185 } // namespace webkit 1185 } // namespace webkit
1186 1186
OLDNEW
« no previous file with comments | « webkit/plugins/ppapi/ppapi_plugin_instance.h ('k') | webkit/plugins/ppapi/ppb_context_3d_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698