1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_FILTER_OPERATIONS_IMPL_H_
6 #define CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_FILTER_OPERATIONS_IMPL_H_
8 #include "cc/output/filter_operations.h"
9 #include "content/common/content_export.h"
10 #include "third_party/WebKit/public/platform/WebFilterOperations.h"
14 class WebFilterOperationsImpl : public blink::WebFilterOperations {
16 CONTENT_EXPORT WebFilterOperationsImpl();
17 virtual ~WebFilterOperationsImpl();
19 const cc::FilterOperations& AsFilterOperations() const;
21 // Implementation of blink::WebFilterOperations methods
22 virtual void appendGrayscaleFilter(float amount);
23 virtual void appendSepiaFilter(float amount);
24 virtual void appendSaturateFilter(float amount);
25 virtual void appendHueRotateFilter(float amount);
26 virtual void appendInvertFilter(float amount);
27 virtual void appendBrightnessFilter(float amount);
28 virtual void appendContrastFilter(float amount);
29 virtual void appendOpacityFilter(float amount);
30 virtual void appendBlurFilter(float amount);
31 virtual void appendDropShadowFilter(blink::WebPoint offset,
33 blink::WebColor color);
34 virtual void appendColorMatrixFilter(SkScalar matrix[20]);
35 virtual void appendZoomFilter(float amount, int inset);
36 virtual void appendSaturatingBrightnessFilter(float amount);
37 virtual void appendReferenceFilter(SkImageFilter* image_filter);
42 cc::FilterOperations filter_operations_;
44 DISALLOW_COPY_AND_ASSIGN(WebFilterOperationsImpl);
47 } // namespace content
49 #endif // CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_FILTER_OPERATIONS_IMPL_H_