aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2018-06-19 10:17:30 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-19 20:16:38 +0000
commit0917fad2c6339b6452e6eb58d4a8485d291d8d43 (patch)
treea277034a104bf9617dedda3cc5114353d86fe6a0 /src/ports
parent386d9cf40278bb026ebfbbc6077144c2d8ed4dd2 (diff)
move imagefilters into separate dir and flag for build.gn
Requires https://chromium-review.googlesource.com/c/chromium/src/+/1105062 Bug: skia: Change-Id: I948056234efa57c0f727a61d5fb3258034de5199 Reviewed-on: https://skia-review.googlesource.com/135566 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/ports')
-rw-r--r--src/ports/SkGlobalInitialization_default.cpp49
-rw-r--r--src/ports/SkGlobalInitialization_default_imagefilters.cpp57
-rw-r--r--src/ports/SkGlobalInitialization_none_imagefilters.cpp10
3 files changed, 67 insertions, 49 deletions
diff --git a/src/ports/SkGlobalInitialization_default.cpp b/src/ports/SkGlobalInitialization_default.cpp
index 83a35acd4e..22aabc2314 100644
--- a/src/ports/SkGlobalInitialization_default.cpp
+++ b/src/ports/SkGlobalInitialization_default.cpp
@@ -7,48 +7,21 @@
#include "Sk1DPathEffect.h"
#include "Sk2DPathEffect.h"
-#include "SkAlphaThresholdFilter.h"
-#include "SkBlurImageFilter.h"
-#include "SkColorFilterImageFilter.h"
#include "SkColorMatrixFilterRowMajor255.h"
-#include "SkComposeImageFilter.h"
#include "SkCornerPathEffect.h"
#include "../../src/effects/SkDashImpl.h"
#include "SkDiscretePathEffect.h"
-#include "SkDisplacementMapEffect.h"
-#include "SkDropShadowImageFilter.h"
#include "../../src/effects/SkEmbossMaskFilter.h"
#include "SkGradientShader.h"
#include "SkHighContrastFilter.h"
-#include "SkImageSource.h"
#include "SkLayerDrawLooper.h"
-#include "SkLightingImageFilter.h"
-#include "SkLocalMatrixImageFilter.h"
#include "SkLumaColorFilter.h"
-#include "SkMagnifierImageFilter.h"
-#include "SkMatrixConvolutionImageFilter.h"
-#include "SkMergeImageFilter.h"
-#include "SkMorphologyImageFilter.h"
-#include "SkOffsetImageFilter.h"
#include "SkOverdrawColorFilter.h"
-#include "SkPaintImageFilter.h"
#include "SkPerlinNoiseShader.h"
-#include "SkPictureImageFilter.h"
#include "SkShaderMaskFilter.h"
#include "SkTableColorFilter.h"
-#include "SkTileImageFilter.h"
#include "SkToSRGBColorFilter.h"
#include "../../src/effects/SkTrimPE.h"
-#include "SkXfermodeImageFilter.h"
-
-// Security note:
-//
-// As new subclasses are added here, they should be reviewed by chrome security before they
-// support deserializing cross-process: chrome-security@google.com. SampleFilterFuzz.cpp should
-// also be amended to exercise the new subclass.
-//
-// See SkReadBuffer::isCrossProcess() and SkPicture::PictureIOSecurityPrecautionsEnabled()
-//
/*
* None of these are strictly "required" for Skia to operate.
@@ -71,7 +44,6 @@ void SkFlattenable::PrivateInitializer::InitEffects() {
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorMatrixFilterRowMajor255)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLumaColorFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkToSRGBColorFilter)
- SkAlphaThresholdFilter::InitializeFlattenables();
SkTableColorFilter::InitializeFlattenables();
SkOverdrawColorFilter::InitializeFlattenables();
SkHighContrastFilter::InitializeFlattenables();
@@ -88,25 +60,4 @@ void SkFlattenable::PrivateInitializer::InitEffects() {
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLine2DPathEffect)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath2DPathEffect)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkTrimPE)
-
- // ImageFilter
- SkImageFilter::InitializeFlattenables();
- SkArithmeticImageFilter::InitializeFlattenables();
- SkXfermodeImageFilter::InitializeFlattenables();
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDilateImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDisplacementMapEffect)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDropShadowImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkErodeImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkImageSource)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPaintImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkTileImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMagnifierImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixConvolutionImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkOffsetImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMergeImageFilter)
- SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterImageFilter)
- SkLightingImageFilter::InitializeFlattenables();
}
diff --git a/src/ports/SkGlobalInitialization_default_imagefilters.cpp b/src/ports/SkGlobalInitialization_default_imagefilters.cpp
new file mode 100644
index 0000000000..5d731778e3
--- /dev/null
+++ b/src/ports/SkGlobalInitialization_default_imagefilters.cpp
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include "SkFlattenablePriv.h"
+#include "SkAlphaThresholdFilter.h"
+#include "SkBlurImageFilter.h"
+#include "SkColorFilterImageFilter.h"
+#include "SkComposeImageFilter.h"
+#include "SkDisplacementMapEffect.h"
+#include "SkDropShadowImageFilter.h"
+#include "SkImageSource.h"
+#include "SkLightingImageFilter.h"
+#include "SkLocalMatrixImageFilter.h"
+#include "SkMagnifierImageFilter.h"
+#include "SkMatrixConvolutionImageFilter.h"
+#include "SkMergeImageFilter.h"
+#include "SkMorphologyImageFilter.h"
+#include "SkOffsetImageFilter.h"
+#include "SkPaintImageFilter.h"
+#include "SkPictureImageFilter.h"
+#include "SkTileImageFilter.h"
+#include "SkXfermodeImageFilter.h"
+
+/*
+ * None of these are strictly "required" for Skia to operate.
+ *
+ * These are the bulk of our "effects" -- subclasses of various effects on SkPaint.
+ *
+ * Clients should feel free to dup this file and modify it as needed. This function "InitEffects"
+ * will automatically be called before any of skia's effects are asked to be deserialized.
+ */
+void SkFlattenable::PrivateInitializer::InitImageFilters() {
+ SkAlphaThresholdFilter::InitializeFlattenables();
+ SkImageFilter::InitializeFlattenables();
+ SkArithmeticImageFilter::InitializeFlattenables();
+ SkXfermodeImageFilter::InitializeFlattenables();
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDilateImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDisplacementMapEffect)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDropShadowImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkErodeImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkImageSource)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPaintImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkTileImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMagnifierImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixConvolutionImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkOffsetImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMergeImageFilter)
+ SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterImageFilter)
+ SkLightingImageFilter::InitializeFlattenables();
+}
diff --git a/src/ports/SkGlobalInitialization_none_imagefilters.cpp b/src/ports/SkGlobalInitialization_none_imagefilters.cpp
new file mode 100644
index 0000000000..c3b622fa1a
--- /dev/null
+++ b/src/ports/SkGlobalInitialization_none_imagefilters.cpp
@@ -0,0 +1,10 @@
+/*
+ * Copyright 2017 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#include "SkFlattenable.h"
+
+void SkFlattenable::PrivateInitializer::InitImageFilters() {}