Index: ui/gl/ca_renderer_layer_params.h |
diff --git a/ui/gl/ca_renderer_layer_params.h b/ui/gl/ca_renderer_layer_params.h |
index a6727b471384b5aadf25b21c6365a511e0ce67e5..ab046a2cc08d0c8283b60bb602811581c5916833 100644 |
--- a/ui/gl/ca_renderer_layer_params.h |
+++ b/ui/gl/ca_renderer_layer_params.h |
@@ -5,6 +5,10 @@ |
#ifndef UI_GL_CA_RENDERER_LAYER_PARAMS_H_ |
#define UI_GL_CA_RENDERER_LAYER_PARAMS_H_ |
+#include <vector> |
+ |
+#include "third_party/skia/include/core/SkColor.h" |
+#include "ui/gfx/geometry/point.h" |
#include "ui/gfx/geometry/rect.h" |
#include "ui/gfx/geometry/rect_f.h" |
#include "ui/gfx/transform.h" |
@@ -42,6 +46,31 @@ struct GL_EXPORT CARendererLayerParams { |
unsigned edge_aa_mask; |
float opacity; |
unsigned filter; |
+ |
+ // This is a subset of cc::FilterOperation::FilterType. |
+ enum class FilterEffectType : uint32_t { |
+ GRAYSCALE, |
+ SEPIA, |
+ SATURATE, |
+ HUE_ROTATE, |
+ INVERT, |
+ BRIGHTNESS, |
+ CONTRAST, |
+ OPACITY, |
+ BLUR, |
+ DROP_SHADOW, |
+ }; |
+ struct GL_EXPORT FilterEffect { |
+ FilterEffectType type = FilterEffectType::GRAYSCALE; |
+ |
+ // For every filter other than DROP_SHADOW, only |amount| is populated. |
+ float amount = 0; |
+ gfx::Point drop_shadow_offset; |
+ SkColor drop_shadow_color = 0; |
+ }; |
+ using FilterEffects = std::vector<FilterEffect>; |
+ |
+ FilterEffects filter_effects; |
}; |
} // namespace ui |