Add support for ColorFilters.

Color filters are fully supported and can be used with shaders.

Change-Id: Id90ccf1c81cb462f2431f366f3f8f710d7971e04
diff --git a/libs/hwui/OpenGLRenderer.h b/libs/hwui/OpenGLRenderer.h
index dc0f50f..d2a291f 100644
--- a/libs/hwui/OpenGLRenderer.h
+++ b/libs/hwui/OpenGLRenderer.h
@@ -43,6 +43,7 @@
 #include "FontRenderer.h"
 #include "ProgramCache.h"
 #include "SkiaShader.h"
+#include "SkiaColorFilter.h"
 
 namespace android {
 namespace uirenderer {
@@ -95,6 +96,9 @@
     void resetShader();
     void setupShader(SkiaShader* shader);
 
+    void resetColorFilter();
+    void setupColorFilter(SkiaColorFilter* filter);
+
     void drawText(const char* text, int bytesCount, int count, float x, float y, SkPaint* paint);
 
 private:
@@ -281,6 +285,9 @@
     Program* mCurrentProgram;
     SkiaShader* mShader;
 
+    // Color filters
+    SkiaColorFilter* mColorFilter;
+
     // Used to draw textured quads
     TextureVertex mMeshVertices[4];