diff options
| author | 2021-02-19 18:44:46 -0800 | |
|---|---|---|
| committer | 2021-02-19 18:44:46 -0800 | |
| commit | 28e62f371a5e3fe97a06c16516c79ae13b6a53c7 (patch) | |
| tree | 451ba1bbc6148171d3412c95093d35e3aa1ed620 | |
| parent | dc9a13ea769aff529cf588691fe629329a543efd (diff) | |
Remove unreleased BlurShader API
Remove BlurShader API which was part of the initial
implementation blur that internally mapped between
SkImageFilter and SkShader. Because we migrated
away from this approach to leverage SkImageFilter
directly as part of the RenderEffect API, BlurShader
is no longer applicable and consumers should use
RenderEffect.createBlur instead.
fixes: 180766802
Test: builds
Change-Id: Ibbe6360c66b8e3718cac4516130336f5758cbd3e
| -rw-r--r-- | core/api/current.txt | 5 | ||||
| -rw-r--r-- | graphics/java/android/graphics/BlurShader.java | 89 |
2 files changed, 0 insertions, 94 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 08e63660c3d9..6732db3c152a 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -14570,11 +14570,6 @@ package android.graphics { enum_constant public static final android.graphics.BlurMaskFilter.Blur SOLID; } - public final class BlurShader extends android.graphics.Shader { - ctor public BlurShader(float, float, @Nullable android.graphics.Shader); - ctor public BlurShader(float, float, @Nullable android.graphics.Shader, @NonNull android.graphics.Shader.TileMode); - } - public class Camera { ctor public Camera(); method public void applyToCanvas(android.graphics.Canvas); diff --git a/graphics/java/android/graphics/BlurShader.java b/graphics/java/android/graphics/BlurShader.java deleted file mode 100644 index 2e4bd7d9be43..000000000000 --- a/graphics/java/android/graphics/BlurShader.java +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (C) 2020 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.graphics; - -import android.annotation.NonNull; -import android.annotation.Nullable; - -/** - * A subclass of shader that blurs input from another {@link android.graphics.Shader} instance - * or all the drawing commands with the {@link android.graphics.Paint} that this shader is - * attached to. - */ -public final class BlurShader extends Shader { - - private final float mRadiusX; - private final float mRadiusY; - private final Shader mInputShader; - private final TileMode mEdgeTreatment; - - private long mNativeInputShader = 0; - - /** - * Create a {@link BlurShader} that blurs the contents of the optional input shader - * with the specified radius along the x and y axis. If no input shader is provided - * then all drawing commands issued with a {@link android.graphics.Paint} that this - * shader is installed in will be blurred. - * - * This uses a default {@link TileMode#DECAL} for edge treatment - * - * @param radiusX Radius of blur along the X axis - * @param radiusY Radius of blur along the Y axis - * @param inputShader Input shader that provides the content to be blurred - */ - public BlurShader(float radiusX, float radiusY, @Nullable Shader inputShader) { - this(radiusX, radiusY, inputShader, TileMode.DECAL); - } - - /** - * Create a {@link BlurShader} that blurs the contents of the optional input shader - * with the specified radius along the x and y axis. If no input shader is provided - * then all drawing commands issued with a {@link android.graphics.Paint} that this - * shader is installed in will be blurred - * @param radiusX Radius of blur along the X axis - * @param radiusY Radius of blur along the Y axis - * @param inputShader Input shader that provides the content to be blurred - * @param edgeTreatment Policy for how to blur content near edges of the blur shader - */ - public BlurShader(float radiusX, float radiusY, @Nullable Shader inputShader, - @NonNull TileMode edgeTreatment) { - mRadiusX = radiusX; - mRadiusY = radiusY; - mInputShader = inputShader; - mEdgeTreatment = edgeTreatment; - } - - /** @hide **/ - @Override - protected long createNativeInstance(long nativeMatrix, boolean filterFromPaint) { - mNativeInputShader = mInputShader != null - ? mInputShader.getNativeInstance(filterFromPaint) : 0; - return nativeCreate(nativeMatrix, mRadiusX, mRadiusY, mNativeInputShader, - mEdgeTreatment.nativeInt); - } - - /** @hide **/ - @Override - protected boolean shouldDiscardNativeInstance(boolean filterFromPaint) { - long currentNativeInstance = mInputShader != null - ? mInputShader.getNativeInstance(filterFromPaint) : 0; - return mNativeInputShader != currentNativeInstance; - } - - private static native long nativeCreate(long nativeMatrix, float radiusX, float radiusY, - long inputShader, int edgeTreatment); -} |