Index: cc/layers/draw_properties.h |
diff --git a/cc/layers/draw_properties.h b/cc/layers/draw_properties.h |
index 4bbce727deff70f122c131dad21a4b756a01d72c..9fa40527c6811b9a400926bc093f36c8c608e76a 100644 |
--- a/cc/layers/draw_properties.h |
+++ b/cc/layers/draw_properties.h |
@@ -6,6 +6,7 @@ |
#define CC_LAYERS_DRAW_PROPERTIES_H_ |
#include "base/memory/scoped_ptr.h" |
+#include "third_party/skia/include/core/SkXfermode.h" |
#include "ui/gfx/rect.h" |
#include "ui/gfx/transform.h" |
@@ -18,6 +19,7 @@ struct CC_EXPORT DrawProperties { |
DrawProperties() |
: opacity(0.f), |
opacity_is_animating(false), |
+ blend_mode(SkXfermode::kSrcOver_Mode), |
screen_space_opacity_is_animating(false), |
target_space_transform_is_animating(false), |
screen_space_transform_is_animating(false), |
@@ -58,6 +60,12 @@ struct CC_EXPORT DrawProperties { |
// animating, the main thread may not have the same values that are used |
// to draw. |
bool opacity_is_animating; |
+ |
+ // DrawProperties::blend_mode may be different than LayerType::blend_mode, |
+ // particularly in the case when the LayerType has it own RenderSurface which |
+ // will take the responsibility to blend the entire subtree. |
+ SkXfermode::Mode blend_mode; |
+ |
bool screen_space_opacity_is_animating; |
bool target_space_transform_is_animating; |
bool screen_space_transform_is_animating; |