Adding an option to change the shadow size

Change-Id: I8ec810c5cf06852771247af5f1d717f41079c4f5
This commit is contained in:
Sunny Goyal 2017-05-16 16:16:25 -07:00
parent 0dc1db4fee
commit 8b6ac00a1b
6 changed files with 11 additions and 16 deletions

View File

@ -15,4 +15,5 @@
-->
<com.android.launcher3.graphics.ShadowDrawable
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/ic_info_no_shadow" />
android:src="@drawable/ic_info_no_shadow"
android:elevation="@dimen/drop_target_shadow_elevation" />

View File

@ -15,4 +15,5 @@
-->
<com.android.launcher3.graphics.ShadowDrawable
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/ic_remove_no_shadow" />
android:src="@drawable/ic_remove_no_shadow"
android:elevation="@dimen/drop_target_shadow_elevation" />

View File

@ -15,4 +15,5 @@
-->
<com.android.launcher3.graphics.ShadowDrawable
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/ic_uninstall_no_shadow" />
android:src="@drawable/ic_uninstall_no_shadow"
android:elevation="@dimen/drop_target_shadow_elevation" />

View File

@ -114,5 +114,6 @@
<declare-styleable name="ShadowDrawable">
<attr name="android:src" />
<attr name="android:shadowColor" />
<attr name="android:elevation" />
</declare-styleable>
</resources>

View File

@ -104,6 +104,7 @@
<!-- Drag padding to add to the bottom of drop targets -->
<dimen name="drop_target_drag_padding">14dp</dimen>
<dimen name="drop_target_text_size">14sp</dimen>
<dimen name="drop_target_shadow_elevation">2dp</dimen>
<!-- the distance an icon must be dragged before button drop targets accept it -->
<dimen name="drag_distanceThreshold">30dp</dimen>
@ -138,7 +139,6 @@
<dimen name="blur_size_medium_outline">2dp</dimen>
<dimen name="blur_size_click_shadow">4dp</dimen>
<dimen name="click_shadow_high_shift">2dp</dimen>
<dimen name="drawable_shadow_size">4dp</dimen>
<!-- Pending widget -->
<dimen name="pending_widget_min_padding">8dp</dimen>

View File

@ -46,6 +46,7 @@ public class ShadowDrawable extends Drawable {
private final ShadowDrawableState mState;
@SuppressWarnings("unused")
public ShadowDrawable() {
this(new ShadowDrawableState());
}
@ -98,17 +99,6 @@ public class ShadowDrawable extends Drawable {
return mState.mIntrinsicWidth;
}
/**
* Sets the color for the generated shadow
*/
public void setShadowColor(int color) {
if (mState.mShadowColor != color) {
mState.mShadowColor = color;
mState.mLastDrawnBitmap = null;
invalidateSelf();
}
}
private void regenerateBitmapCache() {
Bitmap bitmap = Bitmap.createBitmap(mState.mIntrinsicWidth, mState.mIntrinsicHeight,
Bitmap.Config.ARGB_8888);
@ -154,7 +144,8 @@ public class ShadowDrawable extends Drawable {
}
mState.mShadowColor = a.getColor(
R.styleable.ShadowDrawable_android_shadowColor, Color.BLACK);
mState.mShadowSize = r.getDimensionPixelSize(R.dimen.drawable_shadow_size);
mState.mShadowSize = a.getDimensionPixelSize(
R.styleable.ShadowDrawable_android_elevation, 0);
mState.mIntrinsicHeight = d.getIntrinsicHeight() + 2 * mState.mShadowSize;
mState.mIntrinsicWidth = d.getIntrinsicWidth() + 2 * mState.mShadowSize;