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

Unified Diff: ppapi/proxy/compositor_layer_resource.cc

Issue 298023004: [PPAPI] Compositor API implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@compositor_api_def_new
Patch Set: Update Created 6 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 side-by-side diff with in-line comments
Download patch
Index: ppapi/proxy/compositor_layer_resource.cc
diff --git a/ppapi/proxy/compositor_layer_resource.cc b/ppapi/proxy/compositor_layer_resource.cc
index 1aadb84db08f4ad6621572447dbec879875ed613..8c76c19a4228cc1f521f0f8eb1128701bff98307 100644
--- a/ppapi/proxy/compositor_layer_resource.cc
+++ b/ppapi/proxy/compositor_layer_resource.cc
@@ -21,9 +21,12 @@ using ppapi::thunk::PPB_Graphics3D_API;
namespace ppapi {
namespace proxy {
-CompositorLayerResource::CompositorLayerResource(Connection connection,
- PP_Instance instance)
- : PluginResource(connection, instance) {
+CompositorLayerResource::CompositorLayerResource(
+ Connection connection,
+ PP_Instance instance,
+ base::WeakPtr<CompositorResource::Layer> layer)
+ : PluginResource(connection, instance),
+ layer_(layer) {
}
CompositorLayerResource::~CompositorLayerResource() {
@@ -39,7 +42,9 @@ int32_t CompositorLayerResource::SetColor(uint8_t red,
uint8_t blue,
uint8_t alpha,
const struct PP_Size* size) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetColor(red, green, blue, alpha, size);
}
int32_t CompositorLayerResource::SetTexture(
@@ -47,39 +52,55 @@ int32_t CompositorLayerResource::SetTexture(
uint32_t texture,
const struct PP_Size* size,
const scoped_refptr<ppapi::TrackedCallback>& callback) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetTexture(context, texture, size, callback);
}
int32_t CompositorLayerResource::SetImage(
PP_Resource image_data,
const struct PP_Size* size,
const scoped_refptr<ppapi::TrackedCallback>& callback) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetImage(image_data, size, callback);
}
int32_t CompositorLayerResource::SetClipRect(const struct PP_Rect* rect) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetClipRect(rect);
}
int32_t CompositorLayerResource::SetTransform(const float matrix[16]) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetTransform(matrix);
}
int32_t CompositorLayerResource::SetOpacity(uint8_t opacity) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetOpacity(opacity);
}
int32_t CompositorLayerResource::SetBlendMode(PP_BlendMode mode) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetBlendMode(mode);
}
int32_t CompositorLayerResource::SetSourceRect(
const struct PP_FloatRect* rect) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetSourceRect(rect);
}
int32_t CompositorLayerResource::SetPremultipliedAlpha(PP_Bool premult) {
- return PP_ERROR_NOTSUPPORTED;
+ if (!layer_)
+ return PP_ERROR_BADARGUMENT;
+ return layer_->SetPremultipliedAlpha(premult);
}
} // namespace proxy

Powered by Google App Engine
This is Rietveld 408576698