| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module cc.mojom; |
| |
| import "skia/public/interfaces/image_filter.mojom"; |
| import "ui/gfx/geometry/mojo/geometry.mojom"; |
| |
| enum FilterType { |
| GRAYSCALE, |
| SEPIA, |
| SATURATE, |
| HUE_ROTATE, |
| INVERT, |
| BRIGHTNESS, |
| CONTRAST, |
| OPACITY, |
| BLUR, |
| DROP_SHADOW, |
| COLOR_MATRIX, |
| ZOOM, |
| REFERENCE, |
| SATURATING_BRIGHTNESS, |
| ALPHA_THRESHOLD, |
| FILTER_TYPE_LAST = ALPHA_THRESHOLD |
| }; |
| |
| // See cc/output/filter_operation.h. |
| struct FilterOperation { |
| FilterType type; |
| float amount; |
| gfx.mojom.Point drop_shadow_offset; |
| uint32 drop_shadow_color; |
| skia.mojom.ImageFilter image_filter; |
| array<float, 20>? matrix; |
| int32 zoom_inset; |
| // Note: SkRegion is currently not needed for serialization. |
| }; |
| |