diff options
author | Mario Bertschler <bmario@google.com> | 2017-07-21 20:37:16 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2017-07-21 20:37:16 +0000 |
commit | ae2d881d349ac82f6948d28903cdb5fc59102a1a (patch) | |
tree | ddb6bbea781d2e5c475920fb61d32364ca046b0f /src/com/android/launcher3 | |
parent | d1a2743f73d7f13f32beb5313727bc81af98cf23 (diff) | |
parent | fdf394e284ef8034d96c7c23c17de6c48deff754 (diff) | |
download | android_packages_apps_Trebuchet-ae2d881d349ac82f6948d28903cdb5fc59102a1a.tar.gz android_packages_apps_Trebuchet-ae2d881d349ac82f6948d28903cdb5fc59102a1a.tar.bz2 android_packages_apps_Trebuchet-ae2d881d349ac82f6948d28903cdb5fc59102a1a.zip |
Merge changes from topic 'shadowweather' into ub-launcher3-dorval-polish2
* changes:
Adding ability to set a custom blur mask filter and alphas in shadow generator. am: 665971c007
Adding ability to set a custom blur mask filter and alphas in shadow generator.
Diffstat (limited to 'src/com/android/launcher3')
-rw-r--r-- | src/com/android/launcher3/graphics/ShadowGenerator.java | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/com/android/launcher3/graphics/ShadowGenerator.java b/src/com/android/launcher3/graphics/ShadowGenerator.java index 3c71c3acc..60eeef5df 100644 --- a/src/com/android/launcher3/graphics/ShadowGenerator.java +++ b/src/com/android/launcher3/graphics/ShadowGenerator.java @@ -53,33 +53,38 @@ public class ShadowGenerator { private final Canvas mCanvas; private final Paint mBlurPaint; private final Paint mDrawPaint; + private final BlurMaskFilter mDefaultBlurMaskFilter; private ShadowGenerator(Context context) { mIconSize = LauncherAppState.getIDP(context).iconBitmapSize; mCanvas = new Canvas(); mBlurPaint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG); - mBlurPaint.setMaskFilter(new BlurMaskFilter(mIconSize * BLUR_FACTOR, Blur.NORMAL)); mDrawPaint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG); + mDefaultBlurMaskFilter = new BlurMaskFilter(mIconSize * BLUR_FACTOR, Blur.NORMAL); } public synchronized Bitmap recreateIcon(Bitmap icon) { - return recreateIcon(icon, true); + return recreateIcon(icon, true, mDefaultBlurMaskFilter, AMBIENT_SHADOW_ALPHA, + KEY_SHADOW_ALPHA); } - public synchronized Bitmap recreateIcon(Bitmap icon, boolean resize) { + public synchronized Bitmap recreateIcon(Bitmap icon, boolean resize, + BlurMaskFilter blurMaskFilter, int ambientAlpha, int keyAlpha) { int width = resize ? mIconSize : icon.getWidth(); int height = resize ? mIconSize : icon.getHeight(); int[] offset = new int[2]; + + mBlurPaint.setMaskFilter(blurMaskFilter); Bitmap shadow = icon.extractAlpha(mBlurPaint, offset); Bitmap result = Bitmap.createBitmap(width, height, Config.ARGB_8888); mCanvas.setBitmap(result); // Draw ambient shadow - mDrawPaint.setAlpha(AMBIENT_SHADOW_ALPHA); + mDrawPaint.setAlpha(ambientAlpha); mCanvas.drawBitmap(shadow, offset[0], offset[1], mDrawPaint); // Draw key shadow - mDrawPaint.setAlpha(KEY_SHADOW_ALPHA); + mDrawPaint.setAlpha(keyAlpha); mCanvas.drawBitmap(shadow, offset[0], offset[1] + KEY_SHADOW_DISTANCE * mIconSize, mDrawPaint); // Draw the icon |