Add gradient background behind widgets bottom sheet

Bug: 62806036
Change-Id: I8fe6aa1356788a14a93bdecc7c70d6c59440a1a7
This commit is contained in:
Tony Wickham 2017-06-28 16:48:55 -07:00
parent 59fbea393b
commit d4fdbf1fd0
1 changed files with 10 additions and 0 deletions

View File

@ -44,6 +44,7 @@ import com.android.launcher3.allapps.VerticalPullDetector;
import com.android.launcher3.anim.PropertyListBuilder;
import com.android.launcher3.dragndrop.DragController;
import com.android.launcher3.dragndrop.DragOptions;
import com.android.launcher3.graphics.GradientView;
import com.android.launcher3.model.WidgetItem;
import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.util.PackageUserKey;
@ -71,6 +72,7 @@ public class WidgetsBottomSheet extends AbstractFloatingView implements Insettab
private VerticalPullDetector.ScrollInterpolator mScrollInterpolator;
private Rect mInsets;
private VerticalPullDetector mVerticalPullDetector;
private GradientView mGradientBackground;
public WidgetsBottomSheet(Context context, AttributeSet attrs) {
this(context, attrs, 0);
@ -87,6 +89,7 @@ public class WidgetsBottomSheet extends AbstractFloatingView implements Insettab
mInsets = new Rect();
mVerticalPullDetector = new VerticalPullDetector(context);
mVerticalPullDetector.setListener(this);
mGradientBackground = (GradientView) mLauncher.findViewById(R.id.gradient_bg);
}
@Override
@ -269,6 +272,13 @@ public class WidgetsBottomSheet extends AbstractFloatingView implements Insettab
return true;
}
@Override
public void setTranslationY(float translationY) {
super.setTranslationY(translationY);
if (mGradientBackground == null) return;
mGradientBackground.setProgress((mTranslationYClosed - translationY) / mTranslationYRange);
}
@Override
public void onDragEnd(float velocity, boolean fling) {
if ((fling && velocity > 0) || getTranslationY() > (mTranslationYRange) / 2) {